1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-08 14:02:16 +03:00

Fix OOM error on ANALYZE with STAT2 enabled with zero-length data. Ticket [cbd054fa6b].

FossilOrigin-Name: c33b38b59f733494ca0bce3f59a669fe7ed76b9f
This commit is contained in:
shaneh
2010-03-26 01:54:33 +00:00
parent 6d3cb2fbae
commit 1141ae2463
6 changed files with 107 additions and 15 deletions

View File

@@ -618,12 +618,16 @@ int sqlite3AnalysisLoad(sqlite3 *db, int iDb){
n = 24;
}
pSample->nByte = (u8)n;
pSample->u.z = sqlite3DbMallocRaw(dbMem, n);
if( pSample->u.z ){
memcpy(pSample->u.z, z, n);
if( n < 1){
pSample->u.z = 0;
}else{
db->mallocFailed = 1;
break;
pSample->u.z = sqlite3DbMallocRaw(dbMem, n);
if( pSample->u.z ){
memcpy(pSample->u.z, z, n);
}else{
db->mallocFailed = 1;
break;
}
}
}
}