It could be, ill look at it a bit. Thou I havent seen that bug since i made the change,
though it did show rarely.
Sorry but the bug that I said that patch fixed isn't fully correct.
We have other issues with hooks, being:
1. Hooks are called more times then they should be. When co_HOOK_CallHooks is called in
co_IntCreateWindowEx, the application that installed the hook calls CallNextHookEx, this
leads the the hook proc being called again. Havent looked at this yet.
2. A bigger problem is when two CBT hooks are installed, which im looking into now. After
installing the second CBT hook, im seeing cases where co_HOOK_CallHooks is returning a non
zero value though the Hook proc is returning a zero value. I beleive this is the real
cause of the bug i thought the commit fixed.
Damnest of things is that its returning the hook that is returned in the call to
Hook = IntGetFirstValidHook(Table, HookId)
in function co_HOOK_CallHooks line 345.
This value is being returned from the call KiCallUserMode. So maybe some stack trashing
going on.
Michael
Date: Thu, 29 Apr 2010 18:56:36 -0500
From: jimtabor.rosdev(a)gmail.com
To: ros-dev(a)reactos.org
Subject: [ros-dev] [ros-diffs] [mjmartin] 47059: [win32k] - Fix a problem where
application that used WH_CBT hook procedures were receiving destroy window notification on
windows that were never created.
Michael!
Good work!!!!
Do you think this might be one of the reasons we are reentering
co_UserDestroyWindow? The DCE is cleared and (not cached) at first
then we go back a second time and hit the assert...?
http://www.reactos.org/bugzilla/show_bug.cgi?id=5320
_______________________________________________
Ros-dev mailing list
Ros-dev(a)reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev
_________________________________________________________________
The New Busy think 9 to 5 is a cute idea. Combine multiple calendars with Hotmail.
http://www.windowslive.com/campaign/thenewbusy?tile=multicalendar&ocid=…