diff options
-rw-r--r-- | etc/codecs.conf | 9 | ||||
-rw-r--r-- | loader/win32.c | 12 |
2 files changed, 20 insertions, 1 deletions
diff --git a/etc/codecs.conf b/etc/codecs.conf index 8934bb59fa..0abbb866bf 100644 --- a/etc/codecs.conf +++ b/etc/codecs.conf @@ -1091,6 +1091,15 @@ videocodec rv20win ; others: +videocodec LEADMW20 + info "Lead CMW wavelet 2.0" + status working + fourcc LCW2 + driver dshow + dll "LCODCCMW2E.dll"; eval + guid 0xe2b7dc56, 0x38c5, 0x11d5, 0x91, 0xf6, 0x00, 0x10, 0x4b, 0xdb, 0x8f, 0xf9 + out BGR24,BGR8 flip + videocodec ffrv10 info "FFmpeg RV10 decoder" status working diff --git a/loader/win32.c b/loader/win32.c index 35d38b72f0..520dff0a92 100644 --- a/loader/win32.c +++ b/loader/win32.c @@ -1837,6 +1837,15 @@ static long WINAPI expRegQueryValueExA(long key, const char* value, int* reserve if(data && count)dbgprintf(" read %d bytes: '%s'\n", *count, data); return result; } + +//from wine source dlls/advapi32/registry.c +static long WINAPI expRegCreateKeyA(long hkey, const char* name, int *retkey) +{ + dbgprintf("RegCreateKeyA(key 0x%x, name 0x%x='%s',newkey=0x%x)\n",hkey,name,retkey); + return RegCreateKeyExA( hkey, name, 0, NULL,REG_OPTION_NON_VOLATILE, + KEY_ALL_ACCESS , NULL, retkey, NULL ); +} + static long WINAPI expRegCreateKeyExA(long key, const char* name, long reserved, void* classs, long options, long security, void* sec_attr, int* newkey, int* status) @@ -4914,6 +4923,7 @@ struct exports exp_user32[]={ }; struct exports exp_advapi32[]={ FF(RegCloseKey, -1) + FF(RegCreateKeyA, -1) FF(RegCreateKeyExA, -1) FF(RegEnumKeyExA, -1) FF(RegEnumValueA, -1) @@ -5149,7 +5159,7 @@ void* LookupExternal(const char* library, int ordinal) #ifndef LOADLIB_TRY_NATIVE /* hack for truespeech and vssh264*/ - if (!strcmp(library, "tsd32.dll") || !strcmp(library,"vssh264dec.dll")) + if (!strcmp(library, "tsd32.dll") || !strcmp(library,"vssh264dec.dll") || !strcmp(library,"LCMW2.dll")) #endif /* ok, this is a hack, and a big memory leak. should be fixed. - alex */ { |