1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-24 08:21:29 +03:00

Add a parameter to specify the size of the output buffer passed to xGetTempname() and xFullPathname(). This, and the previous commit, are changes to the public vfs API introduced in 3.5.0. (CVS 4433)

FossilOrigin-Name: 8b29f5fbfc723cdf67cf3410cd01f7c17ea39a4b
This commit is contained in:
danielk1977
2007-09-17 07:02:56 +00:00
parent 76ee37f9bb
commit adfb9b0501
12 changed files with 82 additions and 52 deletions

View File

@@ -163,8 +163,8 @@ static int tmpDeviceCharacteristics(sqlite3_file*);
static int fsOpen(sqlite3_vfs*, const char *, sqlite3_file*, int , int *);
static int fsDelete(sqlite3_vfs*, const char *zName, int syncDir);
static int fsAccess(sqlite3_vfs*, const char *zName, int flags);
static int fsGetTempname(sqlite3_vfs*, char *zOut);
static int fsFullPathname(sqlite3_vfs*, const char *zName, char *zOut);
static int fsGetTempname(sqlite3_vfs*, int nOut, char *zOut);
static int fsFullPathname(sqlite3_vfs*, const char *zName, int nOut,char *zOut);
static void *fsDlOpen(sqlite3_vfs*, const char *zFilename);
static void fsDlError(sqlite3_vfs*, int nByte, char *zErrMsg);
static void *fsDlSym(sqlite3_vfs*,void*, const char *zSymbol);
@@ -726,9 +726,9 @@ static int fsAccess(sqlite3_vfs *pVfs, const char *zPath, int flags){
** temporary file. zBufOut is guaranteed to point to a buffer of
** at least (FS_MAX_PATHNAME+1) bytes.
*/
static int fsGetTempname(sqlite3_vfs *pVfs, char *zBufOut){
static int fsGetTempname(sqlite3_vfs *pVfs, int nBufOut, char *zBufOut){
sqlite3_vfs *pParent = ((fs_vfs_t *)pVfs)->pParent;
return pParent->xGetTempname(pParent, zBufOut);
return pParent->xGetTempname(pParent, nBufOut, zBufOut);
}
/*
@@ -736,9 +736,14 @@ static int fsGetTempname(sqlite3_vfs *pVfs, char *zBufOut){
** to the pathname in zPath. zOut is guaranteed to point to a buffer
** of at least (FS_MAX_PATHNAME+1) bytes.
*/
static int fsFullPathname(sqlite3_vfs *pVfs, const char *zPath, char *zOut){
static int fsFullPathname(
sqlite3_vfs *pVfs, /* Pointer to vfs object */
const char *zPath, /* Possibly relative input path */
int nOut, /* Size of output buffer in bytes */
char *zOut /* Output buffer */
){
sqlite3_vfs *pParent = ((fs_vfs_t *)pVfs)->pParent;
return pParent->xFullPathname(pParent, zPath, zOut);
return pParent->xFullPathname(pParent, zPath, nOut, zOut);
}
/*