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

Reply via email to