Module: wine Branch: master Commit: e0169705d927c0be0455df7fba6ac525217d42f3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e0169705d927c0be0455df7fba...
Author: Maarten Lankhorst m.b.lankhorst@gmail.com Date: Mon Nov 29 10:44:19 2010 +0100
winegstreamer: Prevent gstreamer from being unloaded.
---
dlls/winegstreamer/main.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/dlls/winegstreamer/main.c b/dlls/winegstreamer/main.c index ac9e97b..941f433 100644 --- a/dlls/winegstreamer/main.c +++ b/dlls/winegstreamer/main.c @@ -261,6 +261,15 @@ DWORD Gstreamer_init(void) { FIXME("Failed to initialize gstreamer: %s\n", err->message); g_error_free(err); } + if (inited) { + HINSTANCE newhandle; + /* Unloading glib is a bad idea.. it installs atexit handlers, + * so never unload the dll after loading */ + GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS, + (LPCWSTR)hInst, &newhandle); + if (!newhandle) + ERR("Could not pin module %p\n", hInst); + } } return inited; }