Modified:
branches/1.0/mysqlclient/ConnectionString.cs
branches/1.0/mysqlclient/common/DBConnectionString.cs
branches/1.0/mysqlclient/common/NativeMethods.cs
branches/1.0/mysqlclient/common/SharedMemoryStream.cs
branches/1.0/mysqlclient/common/SocketStream.cs
branches/1.0/mysqlclient/common/StreamCreator.cs
branches/1.0/mysqlclient/dataadapter.cs
Log:
added some .net 2.0 conditionals to remove compiler warnings
Modified: branches/1.0/mysqlclient/ConnectionString.cs
===================================================================
--- branches/1.0/mysqlclient/ConnectionString.cs 2006-10-18 21:25:06 UTC (rev 415)
+++ branches/1.0/mysqlclient/ConnectionString.cs 2006-10-18 21:39:43 UTC (rev 416)
@@ -315,8 +315,12 @@
defaults = base.GetDefaultValues();
if (defaults == null)
{
+#if NET20
+ defaults = new Hashtable(StringComparer.CurrentCultureIgnoreCase);
+#else
defaults = new Hashtable(new CaseInsensitiveHashCodeProvider(),
new CaseInsensitiveComparer());
+#endif
defaults["host"] = String.Empty;
defaults["connect lifetime"] = 0;
defaults["user id"] = String.Empty;
Modified: branches/1.0/mysqlclient/common/DBConnectionString.cs
===================================================================
--- branches/1.0/mysqlclient/common/DBConnectionString.cs 2006-10-18 21:25:06 UTC (rev
415)
+++ branches/1.0/mysqlclient/common/DBConnectionString.cs 2006-10-18 21:39:43 UTC (rev
416)
@@ -35,8 +35,12 @@
public DBConnectionString()
{
+#if NET20
+ keyValues = new Hashtable(StringComparer.CurrentCultureIgnoreCase);
+#else
keyValues = new Hashtable(new CaseInsensitiveHashCodeProvider(),
new CaseInsensitiveComparer());
+#endif
}
public void LoadDefaultValues()
Modified: branches/1.0/mysqlclient/common/NativeMethods.cs
===================================================================
--- branches/1.0/mysqlclient/common/NativeMethods.cs 2006-10-18 21:25:06 UTC (rev 415)
+++ branches/1.0/mysqlclient/common/NativeMethods.cs 2006-10-18 21:39:43 UTC (rev 416)
@@ -40,7 +40,7 @@
}
public int Length;
public IntPtr securityDescriptor = IntPtr.Zero;
- public bool inheritHandle;
+ public bool inheritHandle = false;
}
[DllImport("Kernel32")]
Modified: branches/1.0/mysqlclient/common/SharedMemoryStream.cs
===================================================================
--- branches/1.0/mysqlclient/common/SharedMemoryStream.cs 2006-10-18 21:25:06 UTC (rev
415)
+++ branches/1.0/mysqlclient/common/SharedMemoryStream.cs 2006-10-18 21:39:43 UTC (rev
416)
@@ -22,6 +22,8 @@
using System.Runtime.InteropServices;
using System.Threading;
using System.IO;
+using Microsoft.Win32.SafeHandles;
+using System.Diagnostics;
namespace MySql.Data.MySqlClient
{
@@ -68,17 +70,27 @@
private void GetConnectNumber(int timeOut)
{
AutoResetEvent connectRequest = new AutoResetEvent(false);
- connectRequest.Handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE,
- false, memoryName + "_" + "CONNECT_REQUEST");
+ IntPtr handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE, false,
+ memoryName + "_" + "CONNECT_REQUEST");
+#if NET20 && !MONO
+ connectRequest.SafeWaitHandle = new SafeWaitHandle(handle, true);
+#else
+ connectRequest.Handle = handle;
+#endif
AutoResetEvent connectAnswer = new AutoResetEvent(false);
- connectAnswer.Handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE,
- false, memoryName + "_" + "CONNECT_ANSWER");
+ handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE, false,
+ memoryName + "_" + "CONNECT_ANSWER");
+#if NET20 && !MONO
+ connectAnswer.SafeWaitHandle = new SafeWaitHandle(handle, true);
+#else
+ connectAnswer.Handle = handle;
+#endif
IntPtr connectFileMap = OpenFileMapping(FILE_MAP_WRITE, false,
memoryName + "_" + "CONNECT_DATA");
IntPtr connectView = MapViewOfFile(connectFileMap, FILE_MAP_WRITE,
- 0, 0, (UIntPtr)4);
+ 0, 0, (IntPtr)4);
// now start the connection
if (!connectRequest.Set())
@@ -94,23 +106,48 @@
string dataMemoryName = memoryName + "_" + connectNumber;
dataMap = OpenFileMapping(FILE_MAP_WRITE, false,
dataMemoryName + "_DATA");
- dataView = MapViewOfFile(dataMap, FILE_MAP_WRITE, 0, 0, (UIntPtr)(uint)BUFFERLENGTH);
+ dataView = (IntPtr)MapViewOfFile(dataMap, FILE_MAP_WRITE,
+ 0, 0, (IntPtr)(int)BUFFERLENGTH);
serverWrote = new AutoResetEvent(false);
- serverWrote.Handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE,
- false, dataMemoryName + "_SERVER_WROTE");
+ IntPtr handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE, false,
+ dataMemoryName + "_SERVER_WROTE");
+ Debug.Assert(handle != IntPtr.Zero);
+#if NET20 && !MONO
+ serverWrote.SafeWaitHandle = new SafeWaitHandle(handle, true);
+#else
+ serverWrote.Handle = handle;
+#endif
serverRead = new AutoResetEvent(false);
- serverRead.Handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE,
- false, dataMemoryName + "_SERVER_READ");
+ handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE, false,
+ dataMemoryName + "_SERVER_READ");
+ Debug.Assert(handle != IntPtr.Zero);
+#if NET20 && !MONO
+ serverRead.SafeWaitHandle = new SafeWaitHandle(handle, true);
+#else
+ serverRead.Handle = handle;
+#endif
clientWrote = new AutoResetEvent(false);
- clientWrote.Handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE,
- false, dataMemoryName + "_CLIENT_WROTE");
+ handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE, false,
+ dataMemoryName + "_CLIENT_WROTE");
+ Debug.Assert(handle != IntPtr.Zero);
+#if NET20 && !MONO
+ clientWrote.SafeWaitHandle = new SafeWaitHandle(handle, true);
+#else
+ clientWrote.Handle = handle;
+#endif
clientRead = new AutoResetEvent(false);
- clientRead.Handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE,
- false, dataMemoryName + "_CLIENT_READ");
+ handle = OpenEvent(SYNCHRONIZE | EVENT_MODIFY_STATE, false,
+ dataMemoryName + "_CLIENT_READ");
+ Debug.Assert(handle != IntPtr.Zero);
+#if NET20 && !MONO
+ clientRead.SafeWaitHandle = new SafeWaitHandle(handle, true);
+#else
+ clientRead.Handle = handle;
+#endif
// tell the server we are ready
serverRead.Set();
@@ -154,7 +191,7 @@
{
try
{
- dataView = MapViewOfFile(dataMap, FILE_MAP_WRITE, 0, 0, (UIntPtr)(uint)BUFFERLENGTH);
+ dataView = MapViewOfFile(dataMap, FILE_MAP_WRITE, 0, 0, (IntPtr)(int)BUFFERLENGTH);
if (dataView == IntPtr.Zero) return true;
return false;
}
@@ -240,7 +277,7 @@
[DllImport("kernel32.dll")]
static extern IntPtr MapViewOfFile(IntPtr hFileMappingObject, uint
dwDesiredAccess, uint dwFileOffsetHigh, uint dwFileOffsetLow,
- UIntPtr dwNumberOfBytesToMap);
+ IntPtr dwNumberOfBytesToMap);
[DllImport("kernel32.dll")]
static extern bool UnmapViewOfFile(IntPtr lpBaseAddress);
Modified: branches/1.0/mysqlclient/common/SocketStream.cs
===================================================================
--- branches/1.0/mysqlclient/common/SocketStream.cs 2006-10-18 21:25:06 UTC (rev 415)
+++ branches/1.0/mysqlclient/common/SocketStream.cs 2006-10-18 21:39:43 UTC (rev 416)
@@ -141,21 +141,25 @@
#region IDisposable Members
- public void Dispose()
+ protected override void Dispose(bool disposing)
{
- if (socket == null) return;
+ if (disposing)
+ {
+ if (socket == null) return;
- canRead = false;
- canWrite = false;
- try
- {
- socket.Shutdown(SocketShutdown.Both);
+ canRead = false;
+ canWrite = false;
+ try
+ {
+ socket.Shutdown(SocketShutdown.Both);
+ }
+ catch (Exception)
+ {
+ }
+ socket.Close();
+ socket = null;
}
- catch (Exception)
- {
- }
- socket.Close();
- socket = null;
+ base.Dispose(disposing);
}
#endregion
Modified: branches/1.0/mysqlclient/common/StreamCreator.cs
===================================================================
--- branches/1.0/mysqlclient/common/StreamCreator.cs 2006-10-18 21:25:06 UTC (rev 415)
+++ branches/1.0/mysqlclient/common/StreamCreator.cs 2006-10-18 21:39:43 UTC (rev 416)
@@ -106,7 +106,11 @@
private EndPoint CreateUnixEndPoint(string host)
{
// first we need to load the Mono.posix assembly
+#if NET20
+ Assembly a = Assembly.Load("Mono.Posix");
+#else
Assembly a = Assembly.LoadWithPartialName("Mono.Posix");
+#endif
// then we need to construct a UnixEndPoint object
EndPoint ep = (EndPoint)a.CreateInstance("Mono.Posix.UnixEndPoint",
Modified: branches/1.0/mysqlclient/dataadapter.cs
===================================================================
--- branches/1.0/mysqlclient/dataadapter.cs 2006-10-18 21:25:06 UTC (rev 415)
+++ branches/1.0/mysqlclient/dataadapter.cs 2006-10-18 21:39:43 UTC (rev 416)
@@ -81,7 +81,11 @@
/// <include file='docs/MySqlDataAdapter.xml' path='docs/DeleteCommand/*'/>
[Description("Used during Update for deleted rows in Dataset.")]
+#if NET20
+ public new MySqlCommand DeleteCommand
+#else
public MySqlCommand DeleteCommand
+#endif
{
get { return m_deleteCommand; }
set { m_deleteCommand = value; }
@@ -95,7 +99,11 @@
/// <include file='docs/MySqlDataAdapter.xml' path='docs/InsertCommand/*'/>
[Description("Used during Update for new rows in Dataset.")]
+#if NET20
+ public new MySqlCommand InsertCommand
+#else
public MySqlCommand InsertCommand
+#endif
{
get { return m_insertCommand; }
set { m_insertCommand = value; }
@@ -110,7 +118,11 @@
/// <include file='docs/MySqlDataAdapter.xml' path='docs/SelectCommand/*'/>
[Description("Used during Fill/FillSchema")]
[Category("Fill")]
+#if NET20
+ public new MySqlCommand SelectCommand
+#else
public MySqlCommand SelectCommand
+#endif
{
get { return m_selectCommand; }
set { m_selectCommand = value; }
@@ -124,7 +136,11 @@
/// <include file='docs/MySqlDataAdapter.xml' path='docs/UpdateCommand/*'/>
[Description("Used during Update for modified rows in Dataset.")]
+#if NET20
+ public new MySqlCommand UpdateCommand
+#else
public MySqlCommand UpdateCommand
+#endif
{
get { return m_updateCommand; }
set { m_updateCommand = value; }
| Thread |
|---|
| • Connector/NET commit: r416 - in branches/1.0/mysqlclient: . common | rburnett | 18 Oct |