System.Data.SQLite

Check-in [c3b4597979]
Login

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

Overview
Comment:Prevent logging superfluous messages having to do with library initialization checking, ticket [e30b820248].
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: c3b4597979bb09445b580b7976cdc2ccd9f0e134
User & Date: mistachkin 2011-12-17 01:01:42.265
References
2012-01-05
23:42 Closed ticket [3fc172d1be]: SQLite error (21): misuse at line 110832 of [a499ae3835] plus 4 other changes artifact: cb1e51038d user: mistachkin
2011-12-17
01:02 Ticket [e30b820248] API called with finalized prepared statement status still Pending with 1 other change artifact: 695a44b5b8 user: mistachkin
Context
2011-12-19
06:03
Initial draft of the revised release procedures. check-in: 3cf54e3ed1 user: mistachkin tags: trunk
2011-12-17
01:01
Prevent logging superfluous messages having to do with library initialization checking, ticket [e30b820248]. check-in: c3b4597979 user: mistachkin tags: trunk
2011-12-16
08:59
Revise the CLR method used to query the amount of memory in use for the unit test infrastructure. check-in: ef31bb555b user: mistachkin tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Changes to System.Data.SQLite/SQLite3.cs.
1147
1148
1149
1150
1151
1152
1153









1154
1155
1156
1157
1158
1159
1160
1161
1162





1163
1164
1165
1166
1167
1168
1169
    /// <returns>
    /// A boolean indicating whether or not the SQLite core library has been
    /// initialized for the current process.
    /// </returns>
    internal static bool StaticIsInitialized()
    {
        //









        // NOTE: This method [ab]uses the fact that SQLite will always
        //       return SQLITE_ERROR for any unknown configuration option
        //       *unless* the SQLite library has already been initialized.
        //       In that case it will always return SQLITE_MISUSE.
        //
        int rc = UnsafeNativeMethods.sqlite3_config(
            (int)SQLiteConfigOpsEnum.SQLITE_CONFIG_NONE, null, (IntPtr)0);

        return (rc == /* SQLITE_MISUSE */ 21);





    }

    /// <summary>
    /// Helper function to retrieve a column of data from an active statement.
    /// </summary>
    /// <param name="stmt">The statement being step()'d through</param>
    /// <param name="index">The column index to retrieve</param>







>
>
>
>
>
>
>
>
>
|
|
|
|
|
|
|

|
>
>
>
>
>







1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
    /// <returns>
    /// A boolean indicating whether or not the SQLite core library has been
    /// initialized for the current process.
    /// </returns>
    internal static bool StaticIsInitialized()
    {
        //
        // NOTE: Save the state of the logging class and then restore it
        //       after we are done to avoid logging too many false errors.
        //
        bool savedEnabled = SQLiteLog.Enabled;
        SQLiteLog.Enabled = false;

        try
        {
            //
            // NOTE: This method [ab]uses the fact that SQLite will always
            //       return SQLITE_ERROR for any unknown configuration option
            //       *unless* the SQLite library has already been initialized.
            //       In that case it will always return SQLITE_MISUSE.
            //
            int rc = UnsafeNativeMethods.sqlite3_config(
                (int)SQLiteConfigOpsEnum.SQLITE_CONFIG_NONE, null, (IntPtr)0);

            return (rc == /* SQLITE_MISUSE */ 21);
        }
        finally
        {
            SQLiteLog.Enabled = savedEnabled;
        }
    }

    /// <summary>
    /// Helper function to retrieve a column of data from an active statement.
    /// </summary>
    /// <param name="stmt">The statement being step()'d through</param>
    /// <param name="index">The column index to retrieve</param>