drivers/win32/win32.c
changeset 696 381af6bb6155
parent 691 17d9c0736935
child 697 24a2aec61731
--- a/drivers/win32/win32.c	Fri Feb 03 21:42:48 2012 +0100
+++ b/drivers/win32/win32.c	Fri Feb 03 22:13:25 2012 +0100
@@ -118,6 +118,17 @@
 	m_canOpen = (CANOPEN_DRIVER_PROC)GetProcAddress(handle, myTEXT("canOpen_driver"));
 	m_canClose = (CANCLOSE_DRIVER_PROC)GetProcAddress(handle, myTEXT("canClose_driver"));
 	m_canChangeBaudRate = (CANCHANGEBAUDRATE_DRIVER_PROC)GetProcAddress(handle, myTEXT("canChangeBaudRate_driver"));
+
+	if(m_canReceive==NULL || m_canSend==NULL || m_canOpen==NULL || m_canClose==NULL || m_canChangeBaudRate==NULL)
+	{
+	  m_canReceive = NULL;
+	  m_canSend = NULL;
+	  m_canOpen = NULL;
+	  m_canClose = NULL;
+	  m_canChangeBaudRate = NULL;
+	  FreeLibrary(handle);
+	  handle = NULL;
+	}
 #else
   //compiled in...
   handle = 1; //TODO: remove this hack
@@ -140,7 +151,7 @@
 	{
 		return m_canSend(((CANPort*)port)->fd, m);
 	}
-	return 1;
+	return 1; /* NOT OK */	
 }
 
 /***************************************************************************/