fixed setting of __comedi_errno after ioctl
authorFrank Mori Hess <fmhess@speakeasy.net>
Sun, 16 Feb 2003 16:45:13 +0000 (16:45 +0000)
committerFrank Mori Hess <fmhess@speakeasy.net>
Sun, 16 Feb 2003 16:45:13 +0000 (16:45 +0000)
lib/ioctl.c
lib/libinternal.h

index cdcb9ad4faa8768f0aa8d2e5434d68617b9e9034..b0dd2f6b0553dd46b91941470ea6e30050a4ee15 100644 (file)
 
 /* ioctl wrappers */
 
+int _comedi_ioctl( int fd, int request, unsigned long arg )
+{
+       int ret;
+
+       ret = ioctl( fd, request, arg );
+       if( ret < 0 )
+               libc_error();
+       return ret;
+}
 
 int _comedi_ioctl_debug(int fd, int request, unsigned long arg)
 {
        int ret;
 
        fprintf(stderr,"ioctl(%d,0x%08x,0x%08lx) = ",fd,request,arg);
-       ret = ioctl(fd,request,arg);
+       ret = _comedi_ioctl(fd,request,arg);
        fprintf(stderr,"%d\n",ret);
 
        return ret;
index 36e0eec29b1a58b155d9dd1b066d46d6b66f981d..86173345778e1c1c42c90a082366136aeee3bab3 100644 (file)
@@ -126,10 +126,10 @@ struct subdevice_struct{
        comedi_cmd *cmd_timed;
 };
 
-
-#define comedi_ioctl ioctl
+#define comedi_ioctl _comedi_ioctl
 //#define comedi_ioctl _comedi_ioctl_debug
 
+int _comedi_ioctl( int fd, int request, unsigned long arg );
 int _comedi_ioctl_debug(int,int,unsigned long);
 
 /* filler routines */