From 90ccea6639fe76ecbddddb11561addbfbb4edb24 Mon Sep 17 00:00:00 2001 From: diego Date: Sun, 23 May 2010 15:50:49 +0000 Subject: Remove unused function MODULE_DecRefCount(), fixes the warning: loader/module.c:618: warning: 'MODULE_DecRefCount' defined but not used git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31195 b3059339-0415-0410-9bf9-f77b7e298cf2 --- loader/module.c | 33 --------------------------------- 1 file changed, 33 deletions(-) (limited to 'loader') diff --git a/loader/module.c b/loader/module.c index b9dcfa5869..4a292ce0ac 100644 --- a/loader/module.c +++ b/loader/module.c @@ -347,9 +347,6 @@ static WIN_BOOL MODULE_FreeLibrary( WINE_MODREF *wm ) { TRACE("(%s) - START\n", wm->modname ); - /* Recursively decrement reference counts */ - //MODULE_DecRefCount( wm ); - /* Call process detach notifications */ MODULE_DllProcessDetach( wm, FALSE, NULL ); @@ -609,36 +606,6 @@ WIN_BOOL WINAPI FreeLibrary(HINSTANCE hLibModule) return retv; } -/*********************************************************************** - * MODULE_DecRefCount - * - * NOTE: Assumes that the process critical section is held! - */ -static void MODULE_DecRefCount( WINE_MODREF *wm ) -{ - int i; - - if ( wm->flags & WINE_MODREF_MARKER ) - return; - - if ( wm->refCount <= 0 ) - return; - - --wm->refCount; - TRACE("(%s) refCount: %d\n", wm->modname, wm->refCount ); - - if ( wm->refCount == 0 ) - { - wm->flags |= WINE_MODREF_MARKER; - - for ( i = 0; i < wm->nDeps; i++ ) - if ( wm->deps[i] ) - MODULE_DecRefCount( wm->deps[i] ); - - wm->flags &= ~WINE_MODREF_MARKER; - } -} - /*********************************************************************** * GetProcAddress (KERNEL32.257) */ -- cgit v1.2.3 From 46f30279e7375d6932749ef9dbf2b7062e50c5a7 Mon Sep 17 00:00:00 2001 From: sesse Date: Sun, 23 May 2010 16:01:12 +0000 Subject: Add final missing bits of CineForm HD support on Linux (via the Windows DirectShow codec). MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Required changes: - codecs.conf entry (of course). - Allow opening files with “.col” in the file name, just like “vp3” and “.fpf” already was allowed. (CineForm expects to be able to do this, presumably for some color management code.) - In registry.c, fake a few registry keys that the codec expects the installer to have written. Also, change a few magic numbers (0, 2) to the appropriate constants (ERROR_SUCCESS, ERROR_FILE_NOT_FOUND) where appropriate, so the code is easier to follow. SMP works fine, but seemingly performs suboptimally (e.g., on my dual-core laptop, CineForm performs better if I lie to it and tell it I have four cores). I don't know if this is inherent in the codec, or some inefficiency in the emulated synchronization primitives. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@31196 b3059339-0415-0410-9bf9-f77b7e298cf2 --- loader/registry.c | 29 ++++++++++++++++++++++++++--- loader/win32.c | 2 +- 2 files changed, 27 insertions(+), 4 deletions(-) (limited to 'loader') diff --git a/loader/registry.c b/loader/registry.c index cab63ceb72..4a41911cdf 100644 --- a/loader/registry.c +++ b/loader/registry.c @@ -400,9 +400,32 @@ long __stdcall RegQueryValueExA(long key, const char* value, int* reserved, int* if (!c) return 1; t=find_value_by_name(c); + if (t==0) { + // Hacks for CineForm. + if (strcmp(c, "HKCU\\SOFTWARE\\CineForm\\DecoderProperties\\Resolution") == 0) { + if (data) + *data = 1000; + if (type) + *type = REG_DWORD; + if (count) + *count = sizeof(DWORD); + free(c); + return ERROR_SUCCESS; + } + if (strcmp(c, "HKCU\\SOFTWARE\\CineForm\\DecoderProperties\\PixelFormats") == 0) { + if (data) + *data = 0xffff; + if (type) + *type = REG_DWORD; + if (count) + *count = sizeof(DWORD); + free(c); + return ERROR_SUCCESS; + } + free(c); + return ERROR_FILE_NOT_FOUND; + } free(c); - if (t==0) - return 2; if (type) *type=t->type; if (data) @@ -419,7 +442,7 @@ long __stdcall RegQueryValueExA(long key, const char* value, int* reserved, int* { *count=t->len; } - return 0; + return ERROR_SUCCESS; } long __stdcall RegCreateKeyExA(long key, const char* name, long reserved, void* classs, long options, long security, diff --git a/loader/win32.c b/loader/win32.c index 0b1999a043..ab07574803 100644 --- a/loader/win32.c +++ b/loader/win32.c @@ -3764,7 +3764,7 @@ static HANDLE WINAPI expCreateFileA(LPCSTR cs1,DWORD i1,DWORD i2, free(tmp); return result; } - if (strstr(cs1, "vp3") || strstr(cs1, ".fpf")) + if (strstr(cs1, "vp3") || strstr(cs1, ".fpf") || strstr(cs1, ".col")) { int r; int flg = 0; -- cgit v1.2.3