mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-11-21 16:46:54 -08:00
Removed strmbase/quartz locking fix patches (accepted upstream).
This commit is contained in:
parent
e08596a770
commit
9b6f3ef459
@ -21,7 +21,6 @@ Wine-Compholio contains fixes for the following Wine bugs:
|
||||
* Add support for extra large and jumbo icon lists in shell32 ([Wine Bug #24721](http://bugs.winehq.org/show_bug.cgi?id=24721 "Explorer++ crashes when choosing to view large icons or extra large icons"))
|
||||
* Allow special characters in pipe names ([Wine Bug #28995](http://bugs.winehq.org/show_bug.cgi?id=28995 "Unable to use named pipes with \">\" character in the name"))
|
||||
* Fix for ConnectNamedPort return value in overlapped mode ([Wine Bug #16550](http://bugs.winehq.org/show_bug.cgi?id=16550 "ConnectNamedPort should never return OK in overlapped mode (affects chromium ui_tests.exe)"))
|
||||
* Fix race conditions and deadlocks in strmbase/quartz ([Wine Bug #31566](http://bugs.winehq.org/show_bug.cgi?id=31566 "Fallout 3: regression causes block at critical section when radio is enabled"))
|
||||
* GetSecurityInfo returns NULL DACL for process object ([Wine Bug #15980](http://bugs.winehq.org/show_bug.cgi?id=15980 "Rhapsody 2 crashes on startup (GetSecurityInfo returns NULL DACL for process object)"))
|
||||
* Implement a Microsoft Yahei replacement font ([Wine Bug #13829](http://bugs.winehq.org/show_bug.cgi?id=13829 "Wine does not have CJK fonts"))
|
||||
* Implement an Arial replacement font ([Wine Bug #32323](http://bugs.winehq.org/show_bug.cgi?id=32323 "Netflix (Silverlight 4.x) and several .NET Framework 3.x/4.0 WPF apps require either Arial or Verdana to be installed"))
|
||||
|
3
debian/changelog
vendored
3
debian/changelog
vendored
@ -17,7 +17,8 @@ wine-compholio (1.7.24) UNRELEASED; urgency=low
|
||||
* Added patch to use manual redirection for RunDLL_CallEntry16.
|
||||
* Added patch to set ldr.EntryPoint for main executable.
|
||||
* Removed patch to create directories (accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Wed, 30 Jul 2014 17:40:14 -0600
|
||||
* Removed strmbase/quartz locking fix patches (accepted upstream).
|
||||
-- Erich E. Hoover <erich.e.hoover@gmail.com> Tue, 05 Aug 2014 17:28:04 -0600
|
||||
|
||||
wine-compholio (1.7.23) unstable; urgency=low
|
||||
* Rewrite of patch system to simplify maintaining large patchsets.
|
||||
|
@ -33,7 +33,6 @@ PATCHLIST := Miscellaneous.ok \
|
||||
shell32-RunDLL_CallEntry16.ok \
|
||||
shell32-SHCreateSessionKey.ok \
|
||||
shlwapi-UrlCombine.ok \
|
||||
strmbase-Lock_Race_Conditions.ok \
|
||||
user32-GetSystemMetrics.ok \
|
||||
user32-GetTipText.ok \
|
||||
wineboot-HKEY_DYN_DATA.ok \
|
||||
@ -594,29 +593,6 @@ shlwapi-UrlCombine.ok:
|
||||
echo '+ { "shlwapi-UrlCombine", "Sebastian Lackner", "Workaround for broken implementation of shlwapi url functions." },'; \
|
||||
) > shlwapi-UrlCombine.ok
|
||||
|
||||
# Patchset strmbase-Lock_Race_Conditions
|
||||
# |
|
||||
# | Included patches:
|
||||
# | * Fix possible race conditions in strmbase/quartz. [by Erich E. Hoover]
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#31566] Fallout 3: regression causes block at critical section when radio is enabled
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/quartz/dsoundrender.c, dlls/quartz/videorenderer.c, dlls/strmbase/renderer.c
|
||||
# |
|
||||
.INTERMEDIATE: strmbase-Lock_Race_Conditions.ok
|
||||
strmbase-Lock_Race_Conditions.ok:
|
||||
$(PATCH) < strmbase-Lock_Race_Conditions/0001-strmbase-Fix-race-condition-on-InputPin_BeginFlush-b.patch
|
||||
$(PATCH) < strmbase-Lock_Race_Conditions/0002-strmbase-Fix-race-condition-on-InputPin_EndFlush-bet.patch
|
||||
$(PATCH) < strmbase-Lock_Race_Conditions/0003-strmbase-Fix-race-condition-on-InputPin_EndOfStream-.patch
|
||||
$(PATCH) < strmbase-Lock_Race_Conditions/0004-quartz-Fix-race-condition-on-EndOfStream-between-csR.patch
|
||||
$(PATCH) < strmbase-Lock_Race_Conditions/0005-quartz-Fix-race-condition-on-EndFlush-between-csRend.patch
|
||||
$(PATCH) < strmbase-Lock_Race_Conditions/0006-quartz-Fix-race-condition-between-EndOfStream-and-Pa.patch
|
||||
@( \
|
||||
echo '+ { "strmbase-Lock_Race_Conditions", "Erich E. Hoover", "Fix possible race conditions in strmbase/quartz." },'; \
|
||||
) > strmbase-Lock_Race_Conditions.ok
|
||||
|
||||
# Patchset user32-GetSystemMetrics
|
||||
# |
|
||||
# | Included patches:
|
||||
|
@ -1,27 +0,0 @@
|
||||
From b089b250846590430d7908f2cff86ba40f40a696 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Thu, 17 Jul 2014 10:28:42 -0600
|
||||
Subject: strmbase: Fix race condition on InputPin_BeginFlush between
|
||||
csRenderLock and filter.csFilter.
|
||||
|
||||
---
|
||||
dlls/strmbase/renderer.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/strmbase/renderer.c b/dlls/strmbase/renderer.c
|
||||
index bb91236..fb0902e 100644
|
||||
--- a/dlls/strmbase/renderer.c
|
||||
+++ b/dlls/strmbase/renderer.c
|
||||
@@ -130,8 +130,8 @@ static HRESULT WINAPI BaseRenderer_InputPin_BeginFlush(IPin * iface)
|
||||
|
||||
TRACE("(%p/%p)->()\n", This, iface);
|
||||
|
||||
- EnterCriticalSection(&pFilter->filter.csFilter);
|
||||
EnterCriticalSection(&pFilter->csRenderLock);
|
||||
+ EnterCriticalSection(&pFilter->filter.csFilter);
|
||||
EnterCriticalSection(This->pin.pCritSec);
|
||||
hr = BaseInputPinImpl_BeginFlush(iface);
|
||||
if (SUCCEEDED(hr))
|
||||
--
|
||||
1.7.9.5
|
||||
|
@ -1,37 +0,0 @@
|
||||
From 9941d6cd8ac96f5f90d3a93257acb9bee8181ba6 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Thu, 17 Jul 2014 10:35:43 -0600
|
||||
Subject: strmbase: Fix race condition on InputPin_EndFlush between
|
||||
csRenderLock and filter.csFilter.
|
||||
|
||||
---
|
||||
dlls/strmbase/renderer.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/strmbase/renderer.c b/dlls/strmbase/renderer.c
|
||||
index fb0902e..d175fa5 100644
|
||||
--- a/dlls/strmbase/renderer.c
|
||||
+++ b/dlls/strmbase/renderer.c
|
||||
@@ -155,8 +155,8 @@ static HRESULT WINAPI BaseRenderer_InputPin_EndFlush(IPin * iface)
|
||||
|
||||
TRACE("(%p/%p)->()\n", This, pFilter);
|
||||
|
||||
- EnterCriticalSection(&pFilter->filter.csFilter);
|
||||
EnterCriticalSection(&pFilter->csRenderLock);
|
||||
+ EnterCriticalSection(&pFilter->filter.csFilter);
|
||||
EnterCriticalSection(This->pin.pCritSec);
|
||||
hr = BaseInputPinImpl_EndFlush(iface);
|
||||
if (SUCCEEDED(hr))
|
||||
@@ -167,8 +167,8 @@ static HRESULT WINAPI BaseRenderer_InputPin_EndFlush(IPin * iface)
|
||||
hr = BaseRendererImpl_EndFlush(pFilter);
|
||||
}
|
||||
LeaveCriticalSection(This->pin.pCritSec);
|
||||
- LeaveCriticalSection(&pFilter->csRenderLock);
|
||||
LeaveCriticalSection(&pFilter->filter.csFilter);
|
||||
+ LeaveCriticalSection(&pFilter->csRenderLock);
|
||||
return hr;
|
||||
}
|
||||
|
||||
--
|
||||
1.7.9.5
|
||||
|
@ -1,37 +0,0 @@
|
||||
From 88b8e012138b2fc81718cde5f4e4f50cc6b4ed6b Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Thu, 17 Jul 2014 10:37:37 -0600
|
||||
Subject: strmbase: Fix race condition on InputPin_EndOfStream between
|
||||
csRenderLock and filter.csFilter.
|
||||
|
||||
---
|
||||
dlls/strmbase/renderer.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/strmbase/renderer.c b/dlls/strmbase/renderer.c
|
||||
index d175fa5..c8f130c 100644
|
||||
--- a/dlls/strmbase/renderer.c
|
||||
+++ b/dlls/strmbase/renderer.c
|
||||
@@ -105,8 +105,8 @@ static HRESULT WINAPI BaseRenderer_InputPin_EndOfStream(IPin * iface)
|
||||
|
||||
TRACE("(%p/%p)->()\n", This, pFilter);
|
||||
|
||||
- EnterCriticalSection(&pFilter->filter.csFilter);
|
||||
EnterCriticalSection(&pFilter->csRenderLock);
|
||||
+ EnterCriticalSection(&pFilter->filter.csFilter);
|
||||
hr = BaseInputPinImpl_EndOfStream(iface);
|
||||
EnterCriticalSection(This->pin.pCritSec);
|
||||
if (SUCCEEDED(hr))
|
||||
@@ -117,8 +117,8 @@ static HRESULT WINAPI BaseRenderer_InputPin_EndOfStream(IPin * iface)
|
||||
hr = BaseRendererImpl_EndOfStream(pFilter);
|
||||
}
|
||||
LeaveCriticalSection(This->pin.pCritSec);
|
||||
- LeaveCriticalSection(&pFilter->csRenderLock);
|
||||
LeaveCriticalSection(&pFilter->filter.csFilter);
|
||||
+ LeaveCriticalSection(&pFilter->csRenderLock);
|
||||
return hr;
|
||||
}
|
||||
|
||||
--
|
||||
1.7.9.5
|
||||
|
@ -1,27 +0,0 @@
|
||||
From a67e8965650e75947a899cec4540d428e2cd1236 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Thu, 17 Jul 2014 10:30:19 -0600
|
||||
Subject: quartz: Fix race condition on EndOfStream between csRenderLock and
|
||||
filter.csFilter.
|
||||
|
||||
---
|
||||
dlls/quartz/dsoundrender.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/quartz/dsoundrender.c b/dlls/quartz/dsoundrender.c
|
||||
index 57e3d3b..8c67374 100644
|
||||
--- a/dlls/quartz/dsoundrender.c
|
||||
+++ b/dlls/quartz/dsoundrender.c
|
||||
@@ -254,8 +254,8 @@ static HRESULT DSoundRender_HandleEndOfStream(DSoundRenderImpl *This)
|
||||
LeaveCriticalSection(&This->renderer.filter.csFilter);
|
||||
LeaveCriticalSection(&This->renderer.csRenderLock);
|
||||
WaitForSingleObject(This->blocked, 10);
|
||||
- EnterCriticalSection(&This->renderer.filter.csFilter);
|
||||
EnterCriticalSection(&This->renderer.csRenderLock);
|
||||
+ EnterCriticalSection(&This->renderer.filter.csFilter);
|
||||
This->in_loop = 0;
|
||||
}
|
||||
|
||||
--
|
||||
1.7.9.5
|
||||
|
@ -1,31 +0,0 @@
|
||||
From 9315e5c91356306f823cbcde26ed1a4e176fed90 Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Thu, 17 Jul 2014 10:31:17 -0600
|
||||
Subject: quartz: Fix race condition on EndFlush between csRenderLock and
|
||||
filter.csFilter.
|
||||
|
||||
---
|
||||
dlls/quartz/videorenderer.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/quartz/videorenderer.c b/dlls/quartz/videorenderer.c
|
||||
index 4e8f359..571a19d 100644
|
||||
--- a/dlls/quartz/videorenderer.c
|
||||
+++ b/dlls/quartz/videorenderer.c
|
||||
@@ -374,11 +374,11 @@ static HRESULT WINAPI VideoRenderer_EndFlush(BaseRenderer* iface)
|
||||
if (This->renderer.pMediaSample) {
|
||||
ResetEvent(This->hEvent);
|
||||
LeaveCriticalSection(iface->pInputPin->pin.pCritSec);
|
||||
- LeaveCriticalSection(&iface->csRenderLock);
|
||||
LeaveCriticalSection(&iface->filter.csFilter);
|
||||
+ LeaveCriticalSection(&iface->csRenderLock);
|
||||
WaitForSingleObject(This->hEvent, INFINITE);
|
||||
- EnterCriticalSection(&iface->filter.csFilter);
|
||||
EnterCriticalSection(&iface->csRenderLock);
|
||||
+ EnterCriticalSection(&iface->filter.csFilter);
|
||||
EnterCriticalSection(iface->pInputPin->pin.pCritSec);
|
||||
}
|
||||
if (This->renderer.filter.state == State_Paused) {
|
||||
--
|
||||
1.7.9.5
|
||||
|
@ -1,25 +0,0 @@
|
||||
From abaf77994534eaa61cdb2e6dad10de2d5ff7f50f Mon Sep 17 00:00:00 2001
|
||||
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
|
||||
Date: Fri, 18 Jul 2014 10:57:13 -0600
|
||||
Subject: quartz: Fix race condition between EndOfStream and Pause.
|
||||
|
||||
---
|
||||
dlls/quartz/dsoundrender.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/quartz/dsoundrender.c b/dlls/quartz/dsoundrender.c
|
||||
index 8c67374..2914b15 100644
|
||||
--- a/dlls/quartz/dsoundrender.c
|
||||
+++ b/dlls/quartz/dsoundrender.c
|
||||
@@ -243,7 +243,7 @@ end:
|
||||
|
||||
static HRESULT DSoundRender_HandleEndOfStream(DSoundRenderImpl *This)
|
||||
{
|
||||
- while (1)
|
||||
+ while (This->renderer.filter.state == State_Running)
|
||||
{
|
||||
DWORD pos1, pos2;
|
||||
DSoundRender_UpdatePositions(This, &pos1, &pos2);
|
||||
--
|
||||
1.7.9.5
|
||||
|
@ -1,4 +0,0 @@
|
||||
Author: Erich E. Hoover
|
||||
Subject: Fix possible race conditions in strmbase/quartz.
|
||||
Revision: 1
|
||||
Fixes: [31566] Fix race conditions and deadlocks in strmbase/quartz
|
Loading…
Reference in New Issue
Block a user