aboutsummaryrefslogtreecommitdiff
path: root/ext/misc/fileio.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2019-01-08 20:02:48 +0000
committerdrh <drh@noemail.net>2019-01-08 20:02:48 +0000
commit2d77d80a65a2da89d58c04f91aa282d432d5c919 (patch)
tree8a793c3cfd1f4ce2adf7df3e78be038ad48469d6 /ext/misc/fileio.c
parentc930b405f0717d5f8626dd846f3ab1d2a7243195 (diff)
downloadsqlite-2d77d80a65a2da89d58c04f91aa282d432d5c919.tar.gz
sqlite-2d77d80a65a2da89d58c04f91aa282d432d5c919.zip
Use 64-bit math to compute the sizes of memory allocations in extensions.
FossilOrigin-Name: ca67f2ec0e294384c397db438605df1b47aae5f348a8de94f97286997625d169
Diffstat (limited to 'ext/misc/fileio.c')
-rw-r--r--ext/misc/fileio.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/ext/misc/fileio.c b/ext/misc/fileio.c
index 3a4fa18f9..2219aafa0 100644
--- a/ext/misc/fileio.c
+++ b/ext/misc/fileio.c
@@ -646,8 +646,8 @@ static int fsdirNext(sqlite3_vtab_cursor *cur){
FsdirLevel *pLvl;
if( iNew>=pCur->nLvl ){
int nNew = iNew+1;
- int nByte = nNew*sizeof(FsdirLevel);
- FsdirLevel *aNew = (FsdirLevel*)sqlite3_realloc(pCur->aLvl, nByte);
+ sqlite3_int64 nByte = nNew*sizeof(FsdirLevel);
+ FsdirLevel *aNew = (FsdirLevel*)sqlite3_realloc64(pCur->aLvl, nByte);
if( aNew==0 ) return SQLITE_NOMEM;
memset(&aNew[pCur->nLvl], 0, sizeof(FsdirLevel)*(nNew-pCur->nLvl));
pCur->aLvl = aNew;
@@ -727,7 +727,7 @@ static int fsdirColumn(
}else if( S_ISLNK(m) ){
char aStatic[64];
char *aBuf = aStatic;
- int nBuf = 64;
+ sqlite3_int64 nBuf = 64;
int n;
while( 1 ){
@@ -735,7 +735,7 @@ static int fsdirColumn(
if( n<nBuf ) break;
if( aBuf!=aStatic ) sqlite3_free(aBuf);
nBuf = nBuf*2;
- aBuf = sqlite3_malloc(nBuf);
+ aBuf = sqlite3_malloc64(nBuf);
if( aBuf==0 ){
sqlite3_result_error_nomem(ctx);
return SQLITE_NOMEM;