If SQLITE_DEBUG is not defined, rtree.c found at 
https://www.sqlite.org/src/dir?ci=edb095a9a679c8c7&name=ext/rtree fails to 
compile.
This is because bCorrupt is declared (at line 132) only if SQLITE_DEBUG is 
defined, but is referenced unconditionally at line 980.
Line 980 currently is    assert( pRtree->nNodeRef==0 || pRtree->bCorrupt );

and it needs to be replaced by #ifdef SQLITE_DEBUG
    assert( pRtree->nNodeRef==0 ||  pRtree->bCorrupt );
#else
    assert( pRtree->nNodeRef==0);
#endif

Alternatively it may be better to declare and if appropriate set bCorrupt 
unconditionally, since this avoids a possible assertion error on releasing the 
Rtree if it is in fact corrupted and nNodeRef is nonzero.
Richard Parkins
http://www.zen224037.zen.co.uk
https://github.com/rparkins999/sqliteman
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to