linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / drivers / isdn / sc / ioctl.c
index 57c4ab9..94c9afb 100644 (file)
@@ -46,8 +46,7 @@ int sc_ioctl(int card, scs_ioctl *data)
                pr_debug("%s: SCIOCRESET: ioctl received\n",
                        sc_adapter[card]->devicename);
                sc_adapter[card]->StartOnReset = 0;
-               kfree(rcvmsg);
-               return reset(card);
+               return (reset(card));
        }
 
        case SCIOCLOAD:
@@ -97,7 +96,6 @@ int sc_ioctl(int card, scs_ioctl *data)
 
        case SCIOCSTART:
        {
-               kfree(rcvmsg);
                pr_debug("%s: SCIOSTART: ioctl received\n",
                                sc_adapter[card]->devicename);
                if(sc_adapter[card]->EngineUp) {
@@ -185,7 +183,7 @@ int sc_ioctl(int card, scs_ioctl *data)
                                sc_adapter[card]->devicename);
 
                spid = kmalloc(SCIOC_SPIDSIZE, GFP_KERNEL);
-               if (!spid) {
+               if(!spid) {
                        kfree(rcvmsg);
                        return -ENOMEM;
                }
@@ -197,10 +195,10 @@ int sc_ioctl(int card, scs_ioctl *data)
                if (!status) {
                        pr_debug("%s: SCIOCGETSPID: command successful\n",
                                        sc_adapter[card]->devicename);
-               } else {
+               }
+               else {
                        pr_debug("%s: SCIOCGETSPID: command failed (status = %d)\n",
                                sc_adapter[card]->devicename, status);
-                       kfree(spid);
                        kfree(rcvmsg);
                        return status;
                }