Hi, We have sqlite 3.0.7 running on ARM platform with the RTOS from JMI. We have the problem with the following "free" sequence done in build.c in the function sqliteDeleteIndex.
Index *pOld; assert( db!=0 && p->zName!=0 ); pOld = sqlite3HashInsert(&db->aDb[p->iDb].idxHash, p->zName, strlen((char*)p->zName)+1, 0); if( pOld!=0 && pOld!=p ){ sqlite3HashInsert(&db->aDb[p->iDb].idxHash, pOld->zName, strlen((char*)pOld->zName)+1, pOld); } if( p->zColAff ){ sqliteFree(p->zColAff); } freeIndex(p) and the function freeIndex frees the p->zColAff. With our application we are having problems of freeing the same pointer again and again. Though it could be attributed to our own limitation of freeing Memory still I feel that freeing the same pointer again could be removed. Please look into the problem and if required solve the same. I have freeing of p->zCollAff removed in my application and I am not having any more problems (during sqlite3_close(). Thank you, Regards, Sankara Narayanan B