Working on avifil32, sudden "non enough memory" error
julius.schwartzenberg at gmail.com
Mon Nov 16 03:52:04 CST 2009
Dan Kegel wrote:
> Julius wrote:
>> With one file however (GOODTIME.AVI from the win95 cd) I get this
>> error after about a second:
>> err:heap:HEAP_ValidateInUseArena Heap 0x110000: in-use arena 0x184420
>> next block has PREV_FREE flag
>> non enough memory
>> I have no idea where this comes from and why it happens. (It appears to
>> be unrelated to the memcpy call in avifile.c around line 1114.) With
>> +heap I also get this before the error:
>> HIGHPERF/GOODTIME.AVI: heap.c:403: HEAP_GetPtr: Controletest '0' faalt.
>> (the assert fails)
> Sounds like heap corruption. You might want to cut down the
> file to the shortest one that causes the crash, then go
> after it (possibly using valgrind or the like) to look for
> the error.
With valgrind I was able to find the problem actually happens when
AVIFILE_ReadBlock is called and a new block is about to be read.
There doesn't seem to be anything special about this however, as for the
previous blocks (and different files) it works just fine.
> Does your implementation of avifil32 and friends work
> properly on windows?
It appears this is not trivial to test. I had to include Wine's
advapi32.dll in addition to avifil32.dll and then I got an error about a
missing Wine symbol in ntdll.dll. I understand this means I cannot
trivially use this Wine dll on Windows.
More information about the wine-devel