SQliteでsqlite3_exec()を使うとメモリリークする場合

エラーメッセージをsqlite3_free()してないからでしょう

res = sqlite3_exec(database, [sqlQueryStr UTF8String], NULL, NULL, &errorMsg);

if (res != SQLITE_OK)
{
    sqlite3_free(errorMsg); // <-これ

    sqlite3_close(database); 
    NSLog(@"executeQuery Error:  %@", errorMsg);
    database = NULL;
    return res;
}


ネタ元