drivers/unix/unix.c
changeset 454 bc000083297a
parent 442 010c26b9ba89
child 467 40efa79d27dd
--- a/drivers/unix/unix.c	Tue Apr 29 13:54:23 2008 +0200
+++ b/drivers/unix/unix.c	Fri May 02 17:30:37 2008 +0200
@@ -190,12 +190,8 @@
 		canports[i].used = 1;
 		canports[i].fd = fd0;
 		canports[i].d = d;
-	
+		d->canHandle = (CAN_PORT)&canports[i];		
 		CreateReceiveTask(&(canports[i]), &canports[i].receiveTask, &canReceiveLoop);
-		
-		EnterMutex();
-		d->canHandle = (CAN_PORT)&canports[i];
-		LeaveMutex();
 		return (CAN_PORT)&canports[i];
 	}else{
         	MSG("CanOpen : Cannot open board {busname='%s',baudrate='%s'}\n",board->busname, board->baudrate);
@@ -211,12 +207,10 @@
 int canClose(CO_Data * d)
 {
 	UNS8 res;
-
-	EnterMutex();
+	
 	((CANPort*)d->canHandle)->used = 0;
 	CANPort* tmp = (CANPort*)d->canHandle;
 	d->canHandle = NULL;
-	LeaveMutex();
 	
 	// close CAN port
 	res = DLL_CALL(canClose)(tmp->fd);