[Pcsclite-cvs-commit] Drivers/ccid/src ifdhandler.c,1.21,1.22

rousseau@haydn.debian.org rousseau@haydn.debian.org


Update of /cvsroot/pcsclite/Drivers/ccid/src
In directory haydn:/tmp/cvs-serv22469

Modified Files:
	ifdhandler.c 
Log Message:
do not return before pthread_mutex_unlock() in IFDHCreateChannelByName()


Index: ifdhandler.c
===================================================================
RCS file: /cvsroot/pcsclite/Drivers/ccid/src/ifdhandler.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- ifdhandler.c	6 Apr 2004 08:53:05 -0000	1.21
+++ ifdhandler.c	6 Apr 2004 08:59:26 -0000	1.22
@@ -17,6 +17,8 @@
     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */
 
+/* $Id */
+
 #include <stdio.h>
 #include <string.h>
 
@@ -47,6 +49,8 @@
 
 RESPONSECODE IFDHCreateChannelByName(DWORD Lun, LPSTR lpcDevice)
 {
+	RESPONSECODE return_value = IFD_SUCCESS;
+
 	DEBUG_INFO3("lun: %X, device: %s", Lun, lpcDevice);
 
 	if (CheckLun(Lun))
@@ -66,7 +70,7 @@
 	if (OpenPortByName(Lun, lpcDevice) != STATUS_SUCCESS)
 	{
 		DEBUG_CRITICAL("failed");
-		return IFD_COMMUNICATION_ERROR;
+		return_value = IFD_COMMUNICATION_ERROR;
 	}
 
 	/* Maybe we have a special treatment for this reader */
@@ -76,7 +80,7 @@
 	pthread_mutex_unlock(&ifdh_context_mutex);
 #endif
 
-	return IFD_SUCCESS;
+	return return_value;
 } /* IFDHCreateChannelByName */