diff options
author | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-11-03 19:40:38 +0000 |
---|---|---|
committer | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-11-03 19:40:38 +0000 |
commit | 74baf8a5bdd250c4490448d7b3cb2725cef36900 (patch) | |
tree | 5d72971a49ce2d571534ff3be03b530d43d566b6 /loader/pe_image.c | |
parent | 0386dee16eb6e3ea8144aab09b0582dad3a9ab58 (diff) | |
download | mpv-74baf8a5bdd250c4490448d7b3cb2725cef36900.tar.bz2 mpv-74baf8a5bdd250c4490448d7b3cb2725cef36900.tar.xz |
partially synced with avifile... (TODO: migrate to new registry.c and driver.c)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2652 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'loader/pe_image.c')
-rw-r--r-- | loader/pe_image.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/loader/pe_image.c b/loader/pe_image.c index 498e4eeeee..30e7c34da2 100644 --- a/loader/pe_image.c +++ b/loader/pe_image.c @@ -303,13 +303,11 @@ static DWORD fixup_imports( WINE_MODREF *wm ) // TRACE("--- Ordinal %s,%d\n", name, ordinal); - thunk_list->u1.Function=LookupExternal( - name, ordinal); + thunk_list->u1.Function=LookupExternal(name, ordinal); } else { pe_name = (PIMAGE_IMPORT_BY_NAME)RVA(import_list->u1.AddressOfData); // TRACE("--- %s %s.%d\n", pe_name->Name, name, pe_name->Hint); - thunk_list->u1.Function=LookupExternalByName( - name, pe_name->Name); + thunk_list->u1.Function=LookupExternalByName(name, pe_name->Name); } import_list++; thunk_list++; @@ -335,8 +333,6 @@ static DWORD fixup_imports( WINE_MODREF *wm ) thunk_list++; } } - - } return 0; } @@ -857,6 +853,7 @@ WINE_MODREF *PE_LoadLibraryExA (LPCSTR name, DWORD flags) return NULL; } close(hFile); + //printf("^^^^^^^^^^^^^^^^Alloc VM1 %p\n", wm); return wm; } @@ -870,10 +867,14 @@ void PE_UnloadLibrary(WINE_MODREF *wm) { TRACE(" unloading %s\n", wm->filename); - HeapFree( GetProcessHeap(), 0, wm->filename ); - HeapFree( GetProcessHeap(), 0, wm->short_filename ); + if (wm->filename) + free(wm->filename); + if (wm->short_filename) + free(wm->short_filename); + HeapFree( GetProcessHeap(), 0, wm->deps ); VirtualFree( (LPVOID)wm->module, 0, MEM_RELEASE ); HeapFree( GetProcessHeap(), 0, wm ); + //printf("^^^^^^^^^^^^^^^^Free VM1 %p\n", wm); } /***************************************************************************** |