Hi everyone ! TL;DR: with sanitizer in func columnName (l.82210) calling xFunc(l.82235) trigger a cfi_check (and then ABORT)
Fix to do : change prototype of sqlite3_value_text to let him return a `void *` FULL Description: I am using sqlite3.c in android system (not in NDK). I compile android with userdebug option that enable some sanitize option. At the first sql request (a CREATE TABLE FYI) i always have a ABORT on columnName function. After investigation, cfi(control flow integrity) is trigger because xfunc is the following type : `const void *(*xFunc)(Mem*)` but the callback given in parameters is the following type: `const unsigned char *sqlite3_value_text(sqlite3_value *pVal)`. I fix it by doing following changes: 6089c6089 < SQLITE_API const unsigned char *sqlite3_value_text(sqlite3_value*); --- > SQLITE_API const void *sqlite3_value_text(sqlite3_value*); 81305,81306c81305,81306 < SQLITE_API const unsigned char *sqlite3_value_text(sqlite3_value *pVal){ < return (const unsigned char *)sqlite3ValueText(pVal, SQLITE_UTF8); --- > SQLITE_API const void *sqlite3_value_text(sqlite3_value *pVal){ > return sqlite3ValueText(pVal, SQLITE_UTF8); 118946c118946 < const unsigned char * (*value_text)(sqlite3_value*); --- > const void * (*value_text)(sqlite3_value*); version used: sqlite-amalgamation-3270100 Thanks for all your work, it's amazing to use ! Best regards, William _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users