}
}
+ /* Initialize port object */
+ This->pMiniport = Miniport;
+ This->pMiniportMidi = MidiMiniport;
+ This->pDeviceObject = DeviceObject;
+ This->bInitialized = TRUE;
+
if (Miniport)
{
/* initialize IMiniportDMus */
if (!NT_SUCCESS(Status))
{
DPRINT("IMiniportDMus_Init failed with %x\n", Status);
+ This->bInitialized = FALSE;
return Status;
}
{
DPRINT1("failed to get description\n");
Miniport->lpVtbl->Release(Miniport);
+ This->bInitialized = FALSE;
return Status;
}
if (!NT_SUCCESS(Status))
{
DPRINT("IMiniportMidi_Init failed with %x\n", Status);
+ This->bInitialized = FALSE;
return Status;
}
{
DPRINT1("failed to get description\n");
MidiMiniport->lpVtbl->Release(MidiMiniport);
+ This->bInitialized = FALSE;
return Status;
}
else
MidiMiniport->lpVtbl->Release(MidiMiniport);
+ This->bInitialized = FALSE;
return Status;
}
This->ServiceGroup = ServiceGroup;
}
- /* Initialize port object */
- This->pMiniport = Miniport;
- This->pMiniportMidi = MidiMiniport;
- This->pDeviceObject = DeviceObject;
- This->bInitialized = TRUE;
-
/* check if it supports IPinCount interface */
Status = UnknownMiniport->lpVtbl->QueryInterface(UnknownMiniport, &IID_IPinCount, (PVOID*)&PinCount);
if (NT_SUCCESS(Status))
DPRINT("IPortDMus_fnNewRegistryKey called w/o initialized\n");
return STATUS_UNSUCCESSFUL;
}
- return STATUS_UNSUCCESSFUL;
+
+ return PcNewRegistryKey(OutRegistryKey,
+ OuterUnknown,
+ RegistryKeyType,
+ DesiredAccess,
+ This->pDeviceObject,
+ NULL,//FIXME
+ ObjectAttributes,
+ CreateOptions,
+ Disposition);
}
VOID