System.Data.SQLite
Check-in [6a7dae8af3]
Not logged in

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

Overview
Comment:1.0.36.0
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | sourceforge
Files: files | file ages | folders
SHA1: 6a7dae8af35b37657f75e0b41c4241f622527886
User & Date: rmsimpson 2006-10-14 18:01:38
Context
2006-10-14
18:03
Scan PE headers for CE problems check-in: 06c74a1584 user: rmsimpson tags: sourceforge
18:01
1.0.36.0 check-in: 6a7dae8af3 user: rmsimpson tags: sourceforge
02:28
1.0.36.0 check-in: d3361e927b user: rmsimpson tags: sourceforge
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to SQLite.Interop/crypt.c.

    38     38   
    39     39   // Create a cryptographic context.  Use the enhanced provider because it is available on
    40     40   // most platforms
    41     41   static BOOL InitializeProvider()
    42     42   {
    43     43     if (g_hProvider) return TRUE;
    44     44   
    45         -  if (!CryptAcquireContext(&g_hProvider, NULL, MS_ENHANCED_PROV, PROV_RSA_FULL, 0))
           45  +  if (!CryptAcquireContext(&g_hProvider, NULL, MS_ENHANCED_PROV, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT))
    46     46     {
    47         -    if(!CryptAcquireContext(&g_hProvider, NULL, MS_ENHANCED_PROV, PROV_RSA_FULL, CRYPT_NEWKEYSET))
    48         -    {
    49         -      return FALSE;
    50         -    }
           47  +    return FALSE;
    51     48     }
    52     49     return TRUE;
    53     50   }
    54     51   
    55     52   // Create or update a cryptographic context for a pager.
    56     53   // This function will automatically determine if the encryption algorithm requires
    57     54   // extra padding, and if it does, will create a temp buffer big enough to provide

Changes to SQLite.Interop/interop.c.

     1      1   #include "src/sqliteint.h"
     2      2   #include "src\os.h"
     3      3   #include <tchar.h>
     4      4   
     5      5   #if NDEBUG
            6  +
     6      7   #if _WIN32_WCE
     7      8   #include "merge.h"
     8         -#else
     9         -#include "merge_full.h"
    10         -#endif // _WIN32_WCE
    11         -#endif // NDEBUG
    12      9   
    13     10   // IMPORTANT: This placeholder is here for a reason!!!
    14     11   // On the Compact Framework the .data section of the DLL must have its RawDataSize larger than the VirtualSize!
    15     12   // If its not, strong name validation will fail and other bad things will happen.
    16     13   DWORD _ph[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
    17     14   
           15  +#else
           16  +#include "merge_full.h"
           17  +#endif // _WIN32_WCE
           18  +#endif // NDEBUG
           19  +
    18     20   #ifdef OS_WIN
    19     21   
    20     22   #include <tchar.h>
    21     23   
    22     24   typedef void (WINAPI *SQLITEUSERFUNC)(void *, int, void **);
    23     25   typedef int  (WINAPI *SQLITECOLLATION)(int, const void *, int, const void*);
    24     26   

Changes to SQLite.Interop/merge.h.

     1      1   // This code was automatically generated from assembly
     2         -// C:\src\SQLite.NET\System.Data.SQLite\bin\CompactFramework\System.Data.SQLite.dll
            2  +// C:\Src\SQLite.NET\System.Data.SQLite\bin\CompactFramework\System.Data.SQLite.dll
     3      3   
     4      4   #include <windef.h>
     5      5   
     6      6   #pragma data_seg(".clr")
     7      7   #pragma comment(linker, "/SECTION:.clr,ER")
     8         -  char __ph[118000] = {0}; // The number of bytes to reserve
            8  +  char __ph[117996] = {0}; // The number of bytes to reserve
     9      9   #pragma data_seg()
    10     10   
    11     11   typedef BOOL (WINAPI *DLLMAIN)(HANDLE, DWORD, LPVOID);
    12     12   typedef struct EXTRA_STUFF
    13     13   {
    14     14     DWORD dwNativeEntryPoint;
    15         -  DWORD dwReserved;
    16     15   } EXTRA_STUFF, *LPEXTRA_STUFF;
    17     16   
    18     17   __declspec(dllexport) BOOL WINAPI _CorDllMainStub(HANDLE hModule, DWORD dwReason, LPVOID pvReserved)
    19     18   {
    20     19     HANDLE hMod;
    21     20     DLLMAIN proc;
    22     21     LPEXTRA_STUFF pExtra;

Changes to SQLite.Interop/merge_full.h.

     1      1   // This code was automatically generated from assembly
     2         -// C:\src\SQLite.NET\System.Data.SQLite\bin\System.Data.SQLite.dll
            2  +// C:\Src\SQLite.NET\System.Data.SQLite\bin\System.Data.SQLite.dll
     3      3   
     4      4   #include <windef.h>
     5      5   
     6      6   #pragma data_seg(".clr")
     7      7   #pragma comment(linker, "/SECTION:.clr,ER")
     8         -  char __ph[127232] = {0}; // The number of bytes to reserve
            8  +  char __ph[127248] = {0}; // The number of bytes to reserve
     9      9   #pragma data_seg()
    10     10   
    11     11   typedef BOOL (WINAPI *DLLMAIN)(HANDLE, DWORD, LPVOID);
    12     12   typedef struct EXTRA_STUFF
    13     13   {
    14     14     DWORD dwNativeEntryPoint;
    15         -  DWORD dwReserved;
    16     15   } EXTRA_STUFF, *LPEXTRA_STUFF;
    17     16   
    18     17   __declspec(dllexport) BOOL WINAPI _CorDllMainStub(HANDLE hModule, DWORD dwReason, LPVOID pvReserved)
    19     18   {
    20     19     HANDLE hMod;
    21     20     DLLMAIN proc;
    22     21     LPEXTRA_STUFF pExtra;

Changes to System.Data.SQLite/SQLiteEnlistment.cs.

    23     23       {
    24     24         _transaction = cnn.BeginTransaction();
    25     25         _scope = scope;
    26     26         _disposeConnection = false;
    27     27   
    28     28         _scope.EnlistVolatile(this, System.Transactions.EnlistmentOptions.None);
    29     29       }
           30  +
           31  +    private void Cleanup(SQLiteConnection cnn)
           32  +    {
           33  +      if (_disposeConnection)
           34  +        cnn.Dispose();
           35  +
           36  +      _transaction = null;
           37  +      _scope = null;
           38  +    }
    30     39   
    31     40       #region IEnlistmentNotification Members
    32     41   
    33     42       public void Commit(Enlistment enlistment)
    34     43       {
    35     44         SQLiteConnection cnn = _transaction.Connection;
    36     45         cnn._enlistment = null;
................................................................................
    41     50           _transaction.Connection._transactionLevel = 1;
    42     51           _transaction.Commit();
    43     52   
    44     53           enlistment.Done();
    45     54         }
    46     55         finally
    47     56         {
    48         -        if (_disposeConnection)
    49         -          cnn.Dispose();
    50         -
    51         -        _transaction = null;
    52         -        _scope = null;
           57  +        Cleanup(cnn);
    53     58         }
    54     59       }
    55     60   
    56     61       public void InDoubt(Enlistment enlistment)
    57     62       {
    58     63         enlistment.Done();
    59     64       }
................................................................................
    80     85         try
    81     86         {
    82     87           _transaction.Rollback();
    83     88           enlistment.Done();
    84     89         }
    85     90         finally
    86     91         {
    87         -        if (_disposeConnection)
    88         -          cnn.Dispose();
    89         -
    90         -        _transaction = null;
    91         -        _scope = null;
           92  +        Cleanup(cnn);
    92     93         }
    93     94       }
    94     95   
    95     96       #endregion
    96     97     }
    97     98   }
    98     99   #endif // !PLATFORM_COMPACT_FRAMEWORK

Changes to readme.htm.

     1      1   <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
     2      2   <html>
     3      3     <head>
     4      4       <title></title>
     5      5     </head>
     6      6     <body>
     7      7       ADO.NET 2.0 SQLite Data Provider<br>
     8         -    Version 1.0.35.1 September 12, 2006<br>
     9         -    Using SQLite 3.3.7<br>
            8  +    Version 1.0.36.0 September 12, 2006<br>
            9  +    Using SQLite 3.3.8<br>
    10     10       Written by Robert Simpson (<a href="mailto:robert@blackcastlesoft.com">robert@blackcastlesoft.com</a>)<br>
    11     11       Released to the public domain, use at your own risk!<br>
    12     12       Official provider website:&nbsp; <a href="http://sqlite.phxsoftware.com">http://sqlite.phxsoftware.com</a><br />
    13     13       <br>
    14     14       The latest version can be downloaded <a href="http://sourceforge.net/projects/sqlite-dotnet2">
    15     15         here</a>
    16     16       <br>
................................................................................
   116    116         The SQLite3 source code is compiled directly from the SQLite.org release
   117    117         sources.&nbsp; All builds of sqlite after 3.2.8 have included support for Windows CE.&nbsp; Additionally,
   118    118         just one minor modification is made to pager.c, that modification is made automatically by the fixsource.vbs file
   119    119         when the VS2005 solution is compiled.</p>
   120    120       <p></p>
   121    121       <p>
   122    122         <b>Version History</b></p>
          123  +    <p><b>1.0.36.0 - October 14, 2006</b></p>
          124  +    <ul>
          125  +    <li>Fixed another bug retrieving data types when UseUtf16Encoding is true.  Side-effect of further merging the common code between the two base classes.</li><li>Fixed a bug with System.Transactions whereby a connection closed during a transaction scope cannot be rolled back nor committed.</li>
          126  +      <li>Implemented a workaround for a Compact Framework issue regarding strong-named
          127  +        assemblies containing a PE section with a raw size less than the virtual size.&nbsp;</li>
          128  +    </ul>
   123    129       <p><b>1.0.35.1 - September 12, 2006</b></p>
   124    130       <ul>
   125    131       <li>Fixed the TYPES keyword to work when UseUTF16Encoding is true.</li>
   126    132       <li>Fix another bug revealed in 1.0.35.0 regarding infinite loops when the 2nd or subsequent statements of a semi-colon separated command cannot be parsed.</li>
   127    133         <li>Updated the help documentation.&nbsp;</li>
   128    134       </ul>
   129    135       <p><b>1.0.35.0 - September 10, 2006</b></p>