X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=reactos%2Fntoskrnl%2Fvdm%2Fvdmmain.c;h=3dcf145a45b4193418edacf5f2f8e8ec9ae0b047;hp=228753e422954ec8ba4c5f10c8bf2bfa0d40143a;hb=f022f9092b4cc64d6beed6de7303f943f5e27f68;hpb=87db4c425c5197f0d19d1f20245cb9c6be248910;ds=sidebyside diff --git a/reactos/ntoskrnl/vdm/vdmmain.c b/reactos/ntoskrnl/vdm/vdmmain.c index 228753e4229..3dcf145a45b 100644 --- a/reactos/ntoskrnl/vdm/vdmmain.c +++ b/reactos/ntoskrnl/vdm/vdmmain.c @@ -120,25 +120,21 @@ VdmpInitialize(PVOID ControlData) return Status; } - /* Now, copy the first physical page into the first virtual page */ + /* Enter SEH */ _SEH2_TRY { + /* Copy the first physical page into the first virtual page */ RtlMoveMemory(NullAddress, BaseAddress, ViewSize); } _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { - /* Get the status */ - Status = _SEH2_GetExceptionCode(); - } - _SEH2_END; - - if (!NT_SUCCESS(Status)) - { + /* Fail */ DPRINT1("Couldn't copy first page (%x)\n", Status); ZwClose(PhysMemHandle); ZwUnmapViewOfSection(NtCurrentProcess(), BaseAddress); - return Status; + _SEH2_YIELD(return _SEH2_GetExceptionCode()); } + _SEH2_END; /* Close physical memory section handle */ ZwClose(PhysMemHandle);