Hi! There was a reason for doing what I commit'ed,,,, since you are looking at it can you please fix this. 8^) James
gdi32_winetest pen
ExFreePool of already freed address 80e8ba78 KeBugCheck at ntoskrnl/mm/npool.c:1566
*** Fatal System Error: 0x00000000 (0x00000000,0x00000000,0x00000000,0x00000000)
Entered debugger on embedded INT3 at 0x0008:0x808ac7d8. kdb:> bt Eip: <NTOSKRNL.EXE:ac7d9 (lib/rtl/i386/debug_asm.S:42 (RtlpBreakWithStatusInstruction))> Frames: <NTOSKRNL.EXE:29a2 (ntoskrnl/ke/bug.c:1100 (KeBugCheckWithTf@24))> <NTOSKRNL.EXE:2aac (ntoskrnl/ke/bug.c:1364 (KeBugCheck@4))> <NTOSKRNL.EXE:5f00c (ntoskrnl/mm/npool.c:1567 (ExFreeNonPagedPool@4))> <NTOSKRNL.EXE:61e64 (ntoskrnl/mm/pool.c:238 (ExFreePool@4))> <win32k.sys:967ff (subsystems/win32/win32k/objects/pen.c:344 (NtGdiExtCreatePen@44))> <NTOSKRNL.EXE:96eda (ntoskrnl/ke/i386/trap.s:244 (KiFastCallEntry))> ntdll.dll:5dda <gdi32_winetest.EXE:3b497> <gdi32_winetest.EXE:3d605> <gdi32_winetest.EXE:3d78d> <gdi32_winetest.EXE:3dc3d> <gdi32_winetest.EXE:3dc6a> kernel32.dll:21610 <00000000>
Hi, I looked at it again,,, I think I fixed the leak and the crash in 33857, Sorry, James
Not completely, there's still one case left. line 73: if (!PenObject) {... return 0;} I'd say it's better practice to have the caller delete the memory. The double free can be avoided, by "PenObject->pStyle = NULL;" before cleanup.
James Tabor schrieb:
Hi, I looked at it again,,, I think I fixed the leak and the crash in 33857, Sorry, James _______________________________________________ Ros-dev mailing list Ros-dev@reactos.org http://www.reactos.org/mailman/listinfo/ros-dev