Blog: Spilling the Wine

Here you can discuss ReactOS related topics.

Moderator: Moderator Team

justincase
Posts: 434
Joined: Sat Nov 15, 2008 4:13 pm

Re: Blog: Spilling the Wine

Post by justincase » Sat Jul 05, 2014 4:53 pm

I found another thing which I think may work for you, Dr. Memory.
And yes, I see that it has "memory" in the name of the program, but having read a bit of the documentation (specifically, under the "Error Types Reported by Dr. Memory" section there is a page called "Handle Leaks") I believe it may do what you need, as it mentions user handles where it says "The type of handle (kernel, user, or GDI) is listed along with the callstack where it was opened".
Note: It even makes a note of where other handles created with the same callstack that do get closed get closed if there are any.
I reserve the right to ignore any portion of any post if I deem it not constructive or likely to cause the discussion to degenerate.

gigaherz
Posts: 92
Joined: Sat Jan 21, 2006 9:26 pm

Re: Blog: Spilling the Wine

Post by gigaherz » Sat Jul 05, 2014 4:59 pm

Ahh... Dr Memory. I may have to check it again. I tried that one first, but I had issues getting it to work...

swight
Posts: 130
Joined: Thu Jan 10, 2008 10:31 pm

Re: Blog: Spilling the Wine

Post by swight » Thu Jul 10, 2014 7:59 pm

I seem to recall some versions of the windows task manager being able to keep track of the number of GDI handles for each proccess. Probably thinking about the XP or Vista version. it was some sort of column option. may not be a precise method but you could probably tell if a leak was present. this feature doesn't seem to be present in windows 7. hope this info helps.

hbelusca
Developer
Posts: 1128
Joined: Sat Dec 26, 2009 10:36 pm
Location: Zagreb, Croatia

Re: Blog: Spilling the Wine

Post by hbelusca » Thu Jul 10, 2014 8:06 pm

swight wrote:I seem to recall some versions of the windows task manager being able to keep track of the number of GDI handles for each proccess. Probably thinking about the XP or Vista version. it was some sort of column option. may not be a precise method but you could probably tell if a leak was present. this feature doesn't seem to be present in windows 7. hope this info helps.
What gigaherz needs is to track USER handles...

justincase
Posts: 434
Joined: Sat Nov 15, 2008 4:13 pm

Re: Blog: Spilling the Wine

Post by justincase » Thu Jul 10, 2014 9:21 pm

Windows Task Manager has had columns for both GDI Objects & USER Objects available for a long time (I know for a fact that it's in XP, Vista & 7). They are hidden by default, and they show the number of their respective type of object a process has handles for.
swight wrote:may not be a precise method but you could probably tell if a leak was present.
The issue is that we KNOW a leak is present, but gigaherz is having difficulty tracking down WHERE the leak is, so being able to see that 'yes, the number of USER objects is going up when it shouldn't' doesn't tell us anything we don't already know at this point.

Thank you for trying to help, but Task Manager just isn't up to this job.
I reserve the right to ignore any portion of any post if I deem it not constructive or likely to cause the discussion to degenerate.

gigaherz
Posts: 92
Joined: Sat Jan 21, 2006 9:26 pm

Re: Blog: Spilling the Wine

Post by gigaherz » Fri Jul 11, 2014 3:12 am

People, as I will explain tomorrow when I write this week's report (and sorry about missing it last weekend), and as you may have already read in the collaborative TODO list I made, I already found a way to debug the leak by using our shell32.dll in windows, loaded manually by our filebrowser.exe.

I already have traces of who creates the menus that leak, now only the task of tracking who uses those menus, and where they end up remains, and that task is pretty much manual at this point.

I appreciate everyone who has spent time searching for programs, since being aware of them may be useful in the future, but for now, this will do.

Post Reply

Who is online

Users browsing this forum: Google [Bot], karlexceed and 1 guest