SQLite

Check-in [0bd7875bd9]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix an incorrect type signature for the loadable extension pointer for sqlite3_result_pointer().
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | bind-pointer
Files: files | file ages | folders
SHA3-256: 0bd7875bd9948836a14061275eb8ddac627f562a49f59f400ec98c00e2be82c5
User & Date: drh 2017-07-13 17:56:52.837
Context
2017-07-13
18:09
Add new interfaces sqlite3_bind_pointer(), sqlite3_result_pointer(), and sqlite3_value_pointer() used to safely move pointer values through SQL without exposing underlying memory address information. (check-in: 72de49f204 user: drh tags: trunk)
17:56
Fix an incorrect type signature for the loadable extension pointer for sqlite3_result_pointer(). (Closed-Leaf check-in: 0bd7875bd9 user: drh tags: bind-pointer)
17:54
Add the three new pointer interfaces to the loadable extension mechanism. Update sqlite3_value_subtype() documentation to remove the statement about it not being used internally. (check-in: e5a518038f user: drh tags: bind-pointer)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/sqlite3ext.h.
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
  void (*set_last_insert_rowid)(sqlite3*,sqlite3_int64);
  /* Version 3.20.0 and later */
  int (*prepare_v3)(sqlite3*,const char*,int,unsigned int,
                    sqlite3_stmt**,const char**);
  int (*prepare16_v3)(sqlite3*,const void*,int,unsigned int,
                      sqlite3_stmt**,const void**);
  int (*bind_pointer)(sqlite3_stmt*,int,void*);
  int (*result_pointer)(sqlite3_context*,void*);
  void *(*value_pointer)(sqlite3_value*);
};

/*
** This is the function signature used for all extension entry points.  It
** is also defined in the file "loadext.c".
*/







|







286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
  void (*set_last_insert_rowid)(sqlite3*,sqlite3_int64);
  /* Version 3.20.0 and later */
  int (*prepare_v3)(sqlite3*,const char*,int,unsigned int,
                    sqlite3_stmt**,const char**);
  int (*prepare16_v3)(sqlite3*,const void*,int,unsigned int,
                      sqlite3_stmt**,const void**);
  int (*bind_pointer)(sqlite3_stmt*,int,void*);
  void (*result_pointer)(sqlite3_context*,void*);
  void *(*value_pointer)(sqlite3_value*);
};

/*
** This is the function signature used for all extension entry points.  It
** is also defined in the file "loadext.c".
*/