Robert Baruch
2001-Dec-08 16:04 UTC
LoadOEMResource crash [Was: Re: Problem report: SHRINKER.ERR, fix to DEVICE_Open/CreateFileA? ]
More information on exception #2. The offending function is: /********************************************************************** * find_entry_by_id * * Find an entry by id in a resource directory */ static const IMAGE_RESOURCE_DIRECTORY *find_entry_by_id( const IMAGE_RESOURCE_DIRECTORY *dir, WORD id, const void *root ) { const IMAGE_RESOURCE_DIRECTORY_ENTRY *entry; int min, max, pos; entry = (const IMAGE_RESOURCE_DIRECTORY_ENTRY *)(dir + 1); min = dir->NumberOfNamedEntries; max = min + dir->NumberOfIdEntries - 1; while (min <= max) { pos = (min + max) / 2; if (entry[pos].u1.s2.Id == id) return (IMAGE_RESOURCE_DIRECTORY *)((char *)root + entry[pos].u2.s3.OffsetToDirectory); if (entry[pos].u1.s2.Id > id) max = pos - 1; else min = pos + 1; } return NULL; } Where the offending line is min = dir->NumberOfNamedEntries; It looks like the call was made with dir = 0x0045F000, id = 0xE, and I'm not sure about root. Probably find_entry_by_id was called from either PE_FindResourceW or PE_FindResourceExW, possibly through find_entry_by_nameW, which was called by RES_FindResource2, which is the last trace before the exception. If I could get winedbg/gdb to continue past the first exception but stop at the second, I might be able to find out more :( --Rob
lawson_whitney@juno.com
2001-Dec-08 17:44 UTC
LoadOEMResource crash [Was: Re: Problem report: SHRINKER.ERR, fix to DEVICE_Open/CreateFileA? ]
On Sat, 8 Dec 2001, Robert Baruch wrote:> If I could get winedbg/gdb to continue past the first exception but stop > at the second, I might be able to find out more :( > > --RobIs it a first chance exception? Tried pass? IIRC, wine does not stop on it, but winedbg does, so that is what it would be in the best of all possible worlds. Lawson Constants aren't, and variables won't.
Possibly Parallel Threads
- LoadOEMResource crash [Was: Re: Problem report: SHRINKER.ERR, fix to DEVICE_Open/CreateFileA? ]
- LoadOEMResource crash [Was: Re: Problem report: SHRINKER.ERR, fix to DEVICE_Open/CreateFileA? ]
- LoadOEMResource crash [Was: Re: Problem report: SHRINKER.ERR, fix to DEVICE_Open/CreateFileA? ]
- LoadOEMResource crash [Was: Re: Problem report: SHRINKER.ERR, fix to DEVICE_Open/CreateFileA? ]
- LoadOEMResource crash [Was: Re: Problem report: SHRINKER.ERR, fix to DEVICE_Open/CreateFileA? ]