diff --git a/reactos/drivers/ksfilter/ks/clocks.c b/reactos/drivers/ksfilter/ks/clocks.c index e0cbd86eb23..2a37138ab6b 100644 --- a/reactos/drivers/ksfilter/ks/clocks.c +++ b/reactos/drivers/ksfilter/ks/clocks.c @@ -395,7 +395,10 @@ KsCreateDefaultClock( /* let's allocate the clock struct */ Clock = AllocateItem(NonPagedPool, sizeof(KSICLOCK)); if (!Clock) + { + FreeItem(ClockCreate); return STATUS_INSUFFICIENT_RESOURCES; + } /* now allocate the object header */ Status = KsAllocateObjectHeader((PVOID*)&Clock->ObjectHeader, 0, NULL, Irp, &DispatchTable); @@ -404,6 +407,7 @@ KsCreateDefaultClock( if (!NT_SUCCESS(Status)) { /* failed */ + FreeItem(ClockCreate); FreeItem(Clock); return Status; }