Here is a memory leak in RegSetValueExA (from registry.c)
RegSetValueExA calls insert_reg_value() (line 451) which returns
a pointer to a reg_value struct.
insert_reg_value(key, name, v2, data, size);
free(c);
return 0;
insert_reg_value sets v->name to fullname, but v->name never gets freed.
(line 261 of registry.c)
v->name=(char*)malloc(strlen(fullname)+1);
strcpy(v->name, fullname);
save_registry();
return v;
============================================================
Here is a memory leak from pe_image.c/ext.c
I'm calling the VideoEncoder constructor, and it's eventually
getting to PE_LoadImage (line 435 of pe_image.c). The memory that is not
getting freed is for load_addr (allocation at line 570, which calls
VirtualAlloc of ext.c on line 432).
=============================================================
Another leak on the same call to VideoEncoder constructor.
LoadLibraryA calls LoadLibraryExA calls MODULE_LoadLibraryExA calls
PE_LoadLibraryExA calls PE_CreateModule calls fixup_imports (line 277 of
pe_image.c). fixup_imports calls HeapAlloc at line 277. There is a leak
here for wm->deps.
if (!i) return 0;
wm->nDeps = i;
wm->deps = HeapAlloc( GetProcessHeap(), 0, i*sizeof(WINE_MODREF *) );
_______________________________________________
Avifile mailing list
[EMAIL PROTECTED]
http://prak.org/mailman/listinfo/avifile