}\r
                  \r
                /* Check to see if the device was disconnected, if so exit function */\r
-               if (!(USB_IsConnected))\r
-               {\r
-                       /* Return error code */\r
-                       return PIPE_RWSTREAM_DeviceDisconnected;\r
-               }\r
-       };\r
+               if (USB_HostState == HOST_STATE_Unattached)\r
+                 return PIPE_RWSTREAM_DeviceDisconnected;\r
+       }\r
        \r
        /* Freeze OUT pipe after use */\r
        Pipe_SelectPipe(SIMAGE_DATA_OUT_PIPE);\r