VOID DumpQueueHead(IN PQUEUE_HEAD QueueHead);
// constructor / destructor
- CUSBRequest(IUnknown *OuterUnknown){}
- virtual ~CUSBRequest(){}
+ CUSBRequest(IUnknown *OuterUnknown);
+ virtual ~CUSBRequest();
protected:
LONG m_Ref;
};
+//----------------------------------------------------------------------------------------
+CUSBRequest::CUSBRequest(IUnknown *OuterUnknown) :
+ m_CompletionEvent(NULL)
+{
+ UNREFERENCED_PARAMETER(OuterUnknown);
+}
+
+//----------------------------------------------------------------------------------------
+CUSBRequest::~CUSBRequest()
+{
+ if (m_CompletionEvent != NULL)
+ {
+ ExFreePoolWithTag(m_CompletionEvent, TAG_USBEHCI);
+ }
+}
+
//----------------------------------------------------------------------------------------
NTSTATUS
STDMETHODCALLTYPE
}
//
- // check if the request was successfull
+ // check if the request was successful
//
if (!NT_SUCCESS(NtStatusCode))
{
case URB_FUNCTION_CLEAR_FEATURE_TO_DEVICE:
case URB_FUNCTION_CLEAR_FEATURE_TO_INTERFACE:
case URB_FUNCTION_CLEAR_FEATURE_TO_ENDPOINT:
- UNIMPLEMENTED
+ UNIMPLEMENTED;
break;
/* GET CONFIG */
case URB_FUNCTION_SET_DESCRIPTOR_TO_DEVICE:
case URB_FUNCTION_SET_DESCRIPTOR_TO_INTERFACE:
case URB_FUNCTION_SET_DESCRIPTOR_TO_ENDPOINT:
- UNIMPLEMENTED
+ UNIMPLEMENTED;
break;
/* SET FEATURE */
/* SYNC FRAME */
case URB_FUNCTION_SYNC_RESET_PIPE_AND_CLEAR_STALL:
- UNIMPLEMENTED
+ UNIMPLEMENTED;
break;
default:
- UNIMPLEMENTED
+ UNIMPLEMENTED;
break;
}