/ Check-in [786333e0]
Login
SQLite training in Houston TX on 2019-11-05 (details)
Part of the 2019 Tcl Conference

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

Overview
Comment:Fix API documentation typos. Emphasize that the sqlite3_config() routine is not threadsafe.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 786333e05a75406bbd0b5c9c7beb8f16022eabec
User & Date: drh 2015-09-12 19:27:41
Context
2015-09-13
20:15
Add static VFS mutexes to the primary header file comments. check-in: 9a867d9f user: mistachkin tags: trunk
18:43
Merge updates from trunk. check-in: b42c2e20 user: mistachkin tags: mutexInitCmpSwap
2015-09-12
19:27
Fix API documentation typos. Emphasize that the sqlite3_config() routine is not threadsafe. check-in: 786333e0 user: drh tags: trunk
18:57
Import common changes from the mutex initialization branch. check-in: 334720c0 user: mistachkin tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to src/sqlite.h.in.

   120    120   ** KEYWORDS: sqlite3_version, sqlite3_sourceid
   121    121   **
   122    122   ** These interfaces provide the same information as the [SQLITE_VERSION],
   123    123   ** [SQLITE_VERSION_NUMBER], and [SQLITE_SOURCE_ID] C preprocessor macros
   124    124   ** but are associated with the library instead of the header file.  ^(Cautious
   125    125   ** programmers might include assert() statements in their application to
   126    126   ** verify that values returned by these interfaces match the macros in
   127         -** the header, and thus insure that the application is
          127  +** the header, and thus ensure that the application is
   128    128   ** compiled with matching library and header files.
   129    129   **
   130    130   ** <blockquote><pre>
   131    131   ** assert( sqlite3_libversion_number()==SQLITE_VERSION_NUMBER );
   132    132   ** assert( strcmp(sqlite3_sourceid(),SQLITE_SOURCE_ID)==0 );
   133    133   ** assert( strcmp(sqlite3_libversion(),SQLITE_VERSION)==0 );
   134    134   ** </pre></blockquote>)^
................................................................................
   370    370   ** to an empty string, or a pointer that contains only whitespace and/or 
   371    371   ** SQL comments, then no SQL statements are evaluated and the database
   372    372   ** is not changed.
   373    373   **
   374    374   ** Restrictions:
   375    375   **
   376    376   ** <ul>
   377         -** <li> The application must insure that the 1st parameter to sqlite3_exec()
          377  +** <li> The application must ensure that the 1st parameter to sqlite3_exec()
   378    378   **      is a valid and open [database connection].
   379    379   ** <li> The application must not close the [database connection] specified by
   380    380   **      the 1st parameter to sqlite3_exec() while sqlite3_exec() is running.
   381    381   ** <li> The application must not modify the SQL statement text passed into
   382    382   **      the 2nd parameter of sqlite3_exec() while sqlite3_exec() is running.
   383    383   ** </ul>
   384    384   */
................................................................................
  1363   1363   **
  1364   1364   ** The sqlite3_config() interface is used to make global configuration
  1365   1365   ** changes to SQLite in order to tune SQLite to the specific needs of
  1366   1366   ** the application.  The default configuration is recommended for most
  1367   1367   ** applications and so this routine is usually not necessary.  It is
  1368   1368   ** provided to support rare applications with unusual needs.
  1369   1369   **
  1370         -** The sqlite3_config() interface is not threadsafe.  The application
  1371         -** must insure that no other SQLite interfaces are invoked by other
  1372         -** threads while sqlite3_config() is running.  Furthermore, sqlite3_config()
         1370  +** <b>The sqlite3_config() interface is not threadsafe. The application
         1371  +** must ensure that no other SQLite interfaces are invoked by other
         1372  +** threads while sqlite3_config() is running.</b>
         1373  +**
         1374  +** The sqlite3_config() interface
  1373   1375   ** may only be invoked prior to library initialization using
  1374   1376   ** [sqlite3_initialize()] or after shutdown by [sqlite3_shutdown()].
  1375   1377   ** ^If sqlite3_config() is called after [sqlite3_initialize()] and before
  1376   1378   ** [sqlite3_shutdown()] then it will return SQLITE_MISUSE.
  1377   1379   ** Note, however, that ^sqlite3_config() can be called as part of the
  1378   1380   ** implementation of an application-defined [sqlite3_os_init()].
  1379   1381   **