Author: akhaldi
Date: Mon Nov 23 09:51:23 2015
New Revision: 70065
URL:
http://svn.reactos.org/svn/reactos?rev=70065&view=rev
Log:
[WINDOWSCODECS] Sync with Wine Staging 1.7.55. CORE-10536
Modified:
trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt
trunk/reactos/dll/win32/windowscodecs/gifformat.c
trunk/reactos/dll/win32/windowscodecs/regsvr.c
trunk/reactos/dll/win32/windowscodecs/tiffformat.c
trunk/reactos/dll/win32/windowscodecs/ungif.c
trunk/reactos/media/doc/README.WINE
Modified: trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/windowscodecs/CM…
==============================================================================
--- trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/windowscodecs/CMakeLists.txt [iso-8859-1] Mon Nov 23 09:51:23
2015
@@ -63,6 +63,6 @@
set_module_type(windowscodecs win32dll)
target_link_libraries(windowscodecs wine uuid ${PSEH_LIB})
-add_importlibs(windowscodecs ole32 oleaut32 rpcrt4 shlwapi user32 gdi32 advapi32 msvcrt
kernel32 ntdll)
+add_importlibs(windowscodecs ole32 oleaut32 rpcrt4 shlwapi user32 gdi32 advapi32
advapi32_vista msvcrt kernel32 ntdll)
add_pch(windowscodecs wincodecs_private.h SOURCE)
add_cd_file(TARGET windowscodecs DESTINATION reactos/system32 FOR all)
Modified: trunk/reactos/dll/win32/windowscodecs/gifformat.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/windowscodecs/gi…
==============================================================================
--- trunk/reactos/dll/win32/windowscodecs/gifformat.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/windowscodecs/gifformat.c [iso-8859-1] Mon Nov 23 09:51:23
2015
@@ -1040,10 +1040,13 @@
if (ref == 0)
{
- IStream_Release(This->stream);
+ if (This->stream)
+ {
+ IStream_Release(This->stream);
+ DGifCloseFile(This->gif);
+ }
This->lock.DebugInfo->Spare[0] = 0;
DeleteCriticalSection(&This->lock);
- DGifCloseFile(This->gif);
HeapFree(GetProcessHeap(), 0, This);
}
@@ -1420,6 +1423,7 @@
This->IWICBitmapDecoder_iface.lpVtbl = &GifDecoder_Vtbl;
This->IWICMetadataBlockReader_iface.lpVtbl = &GifDecoder_BlockVtbl;
+ This->stream = NULL;
This->ref = 1;
This->initialized = FALSE;
This->gif = NULL;
Modified: trunk/reactos/dll/win32/windowscodecs/regsvr.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/windowscodecs/re…
==============================================================================
--- trunk/reactos/dll/win32/windowscodecs/regsvr.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/windowscodecs/regsvr.c [iso-8859-1] Mon Nov 23 09:51:23 2015
@@ -361,11 +361,11 @@
for (; res == ERROR_SUCCESS && list->clsid; ++list) {
StringFromGUID2(list->clsid, buf, 39);
- res = SHDeleteKeyW(coclass_key, buf);
+ res = RegDeleteTreeW(coclass_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
- res = SHDeleteKeyW(instance_key, buf);
+ res = RegDeleteTreeW(instance_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
}
@@ -539,11 +539,11 @@
for (; res == ERROR_SUCCESS && list->clsid; ++list) {
StringFromGUID2(list->clsid, buf, 39);
- res = SHDeleteKeyW(coclass_key, buf);
+ res = RegDeleteTreeW(coclass_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
- res = SHDeleteKeyW(instance_key, buf);
+ res = RegDeleteTreeW(instance_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
}
@@ -696,11 +696,11 @@
for (; res == ERROR_SUCCESS && list->clsid; ++list) {
StringFromGUID2(list->clsid, buf, 39);
- res = SHDeleteKeyW(coclass_key, buf);
+ res = RegDeleteTreeW(coclass_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
- res = SHDeleteKeyW(instance_key, buf);
+ res = RegDeleteTreeW(instance_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
}
@@ -906,11 +906,11 @@
for (; res == ERROR_SUCCESS && list->clsid; ++list) {
StringFromGUID2(list->clsid, buf, 39);
- res = SHDeleteKeyW(coclass_key, buf);
+ res = RegDeleteTreeW(coclass_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
- res = SHDeleteKeyW(instance_key, buf);
+ res = RegDeleteTreeW(instance_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
}
@@ -1081,11 +1081,11 @@
for (; res == ERROR_SUCCESS && list->clsid; ++list) {
StringFromGUID2(list->clsid, buf, 39);
- res = SHDeleteKeyW(coclass_key, buf);
+ res = RegDeleteTreeW(coclass_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
- res = SHDeleteKeyW(instance_key, buf);
+ res = RegDeleteTreeW(instance_key, buf);
if (res == ERROR_FILE_NOT_FOUND) res = ERROR_SUCCESS;
if (res != ERROR_SUCCESS) goto error_close_coclass_key;
}
@@ -2021,14 +2021,14 @@
for (; res == ERROR_SUCCESS && list->clsid; list++)
{
StringFromGUID2(list->clsid, buf, 39);
- res = SHDeleteKeyW(instance_key, buf);
+ res = RegDeleteTreeW(instance_key, buf);
}
RegCloseKey(instance_key);
RegCloseKey(categories_key);
StringFromGUID2(&CLSID_WICImagingCategories, buf, 39);
- res = SHDeleteKeyW(coclass_key, buf);
+ res = RegDeleteTreeW(coclass_key, buf);
RegCloseKey(coclass_key);
Modified: trunk/reactos/dll/win32/windowscodecs/tiffformat.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/windowscodecs/ti…
==============================================================================
--- trunk/reactos/dll/win32/windowscodecs/tiffformat.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/windowscodecs/tiffformat.c [iso-8859-1] Mon Nov 23 09:51:23
2015
@@ -210,7 +210,7 @@
IWICBitmapDecoder IWICBitmapDecoder_iface;
LONG ref;
IStream *stream;
- CRITICAL_SECTION lock; /* Must be held when tiff is used or initiailzed is set */
+ CRITICAL_SECTION lock; /* Must be held when tiff is used or initialized is set */
TIFF *tiff;
BOOL initialized;
} TiffDecoder;
Modified: trunk/reactos/dll/win32/windowscodecs/ungif.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/windowscodecs/un…
==============================================================================
--- trunk/reactos/dll/win32/windowscodecs/ungif.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/windowscodecs/ungif.c [iso-8859-1] Mon Nov 23 09:51:23 2015
@@ -491,7 +491,10 @@
* image until empty block (size 0) detected. We use GetCodeNext. */
do
if (DGifGetCodeNext(GifFile, &Dummy) == GIF_ERROR)
+ {
+ WARN("GIF is not properly terminated\n");
break;
+ }
while (Dummy != NULL) ;
}
return GIF_OK;
@@ -927,9 +930,17 @@
Extensions->Function = Function;
- /* Create an extension block with our data */
- if (AddExtensionBlock(Extensions, ExtData[0], &ExtData[1]) ==
GIF_ERROR)
- return (GIF_ERROR);
+ if (ExtData)
+ {
+ /* Create an extension block with our data */
+ if (AddExtensionBlock(Extensions, ExtData[0], &ExtData[1]) ==
GIF_ERROR)
+ return (GIF_ERROR);
+ }
+ else /* Empty extension block */
+ {
+ if (AddExtensionBlock(Extensions, 0, NULL) == GIF_ERROR)
+ return (GIF_ERROR);
+ }
while (ExtData != NULL) {
int Len;
Modified: trunk/reactos/media/doc/README.WINE
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?rev=…
==============================================================================
--- trunk/reactos/media/doc/README.WINE [iso-8859-1] (original)
+++ trunk/reactos/media/doc/README.WINE [iso-8859-1] Mon Nov 23 09:51:23 2015
@@ -200,7 +200,7 @@
reactos/dll/win32/vssapi # Synced to WineStaging-1.7.47
reactos/dll/win32/wbemdisp # Synced to WineStaging-1.7.47
reactos/dll/win32/wbemprox # Synced to WineStaging-1.7.55
-reactos/dll/win32/windowscodecs # Synced to WineStaging-1.7.47
+reactos/dll/win32/windowscodecs # Synced to WineStaging-1.7.55
reactos/dll/win32/windowscodecsext # Synced to WineStaging-1.7.47
reactos/dll/win32/winemp3.acm # Synced to WineStaging-1.7.47
reactos/dll/win32/wing32 # Synced to WineStaging-1.7.55