Merged with master.

This commit is contained in:
Sebastian Lackner 2014-07-25 03:43:33 +02:00
parent f69c6a545c
commit 10d9fda5f9
28 changed files with 89865 additions and 221891 deletions

502
LICENSE.LGPLv2.1 Normal file

File diff suppressed because it is too large Load Diff

59
LICENSE.Liberation Normal file
View File

@ -0,0 +1,59 @@
The following files are under this license:
* ./patches/10-Missing_Fonts/0001-fonts-Add-Liberation-Sans-as-an-Arial-replacement.patch
LICENSE AGREEMENT AND LIMITED PRODUCT WARRANTY
LIBERATION FONT SOFTWARE
This agreement governs the use of the Software and any updates to the Software,
regardless of the delivery mechanism. Subject to the following terms, Red Hat,
Inc. ("Red Hat") grants to the user ("Client") a license to this work pursuant
to the GNU General Public License v.2 with the exceptions set forth below and
such other terms as our set forth in this End User License Agreement.
1.The Software and License Exception. LIBERATION font software (the "Software")
consists of TrueType-OpenType formatted font software for rendering LIBERATION
typefaces in sans serif, serif, and monospaced character styles. You are licensed
to use, modify, copy, and distribute the Software pursuant to the GNU General
Public License v.2 with the following exceptions:
(a)As a special exception, if you create a document which uses this font, and
embed this font or unaltered portions of this font into the document, this font
does not by itself cause the resulting document to be covered by the GNU General
Public License. This exception does not however invalidate any other reasons why
the document might be covered by the GNU General Public License. If you modify
this font, you may extend this exception to your version of the font, but you
are not obligated to do so. If you do not wish to do so, delete this exception
statement from your version.
(b)As a further exception, any distribution of the object code of the Software
in a physical product must provide you the right to access and modify the source
code for the Software and to reinstall that modified version of the Software in
object code form on the same physical product on which you received it.
2.Intellectual Property Rights. The Software and each of its components,
including the source code, documentation, appearance, structure and organization
are owned by Red Hat and others and are protected under copyright and other laws.
Title to the Software and any component, or to any copy, modification, or merged
portion shall remain with the aforementioned, subject to the applicable license.
The "LIBERATION" trademark is a trademark of Red Hat, Inc. in the U.S. and other
countries. This agreement does not permit Client to distribute modified versions
of the Software using Red Hat's trademarks. If Client makes a redistribution of
a modified version of the Software, then Client must modify the files names to
remove any reference to the Red Hat trademarks and must not use the Red Hat
trademarks in any way to reference or promote the modified Software.
3.Limited Warranty. To the maximum extent permitted under applicable law, the
Software is provided and licensed "as is" without warranty of any kind,
expressed or implied, including the implied warranties of merchantability,
non-infringement or fitness for a particular purpose. Red Hat does not warrant
that the functions contained in the Software will meet Client's requirements or
that the operation of the Software will be entirely error free or appear
precisely as described in the accompanying documentation.
4.Limitation of Remedies and Liability. To the maximum extent permitted by
applicable law, Red Hat or any Red Hat authorized dealer will not be liable to
Client for any incidental or consequential damages, including lost profits or
lost savings arising out of the use or inability to use the Software, even if
Red Hat or such dealer has been advised of the possibility of such damages.
5.General. If any provision of this agreement is held to be unenforceable, that
shall not affect the enforceability of the remaining provisions. This agreement
shall be governed by the laws of the State of North Carolina and of the United
States, without regard to any conflict of laws provisions, except that the
United Nations Convention on the International Sale of Goods shall not apply.
Copyright © 2007 Red Hat, Inc. All rights reserved. LIBERATION is a trademark
of Red Hat, Inc.

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
wine-compholio
==============
The Wine "Compholio" Edition repository includes a variety of patches ") for
The Wine "Compholio" Edition repository includes a variety of patches for
Wine to run common Windows applications under Linux.
These patches fix the following Wine bugs:
@ -11,7 +11,9 @@ These patches fix the following Wine bugs:
* 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)"))
* Workaround for TransactNamedPipe not being supported ([Wine Bug #17273](http://bugs.winehq.org/show_bug.cgi?id=17273 "Many apps and games need SetNamedPipeHandleState implementation (support for named pipe message mode)(FireFox+Flash, Win8/NET 4.x SDK/vcrun2012, WiX installers)"))
* Support for process ACLs ([Wine Bug #22006](http://bugs.winehq.org/show_bug.cgi?id=22006 "OpenProcess does not enforce ACL"))
* Return correct IMediaSeeking stream positions in quartz ([Wine Bug #23174](http://bugs.winehq.org/show_bug.cgi?id=23174 "Fallout 3: Diologue and Video/sound issues"))
* Add implementation of WTSEnumerateProcessesW ([Wine Bug #29903](http://bugs.winehq.org/show_bug.cgi?id=29903 "Some Microsoft debuggers fail to enumerate processes due to wtsapi32.WTSEnumerateProcessesW() being a stub (Microsoft Visual Studio 2005, DbgCLR from .NET 2.0 SDK)"))
* 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"))
* Support for stored file ACLs ([Wine Bug #31858](http://bugs.winehq.org/show_bug.cgi?id=31858 "Netflix on Firefox fails with Internet Connection Problem when loading bar is at 99%"))
* 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"))
* Support for interface change notifications ([Wine Bug #32328](http://bugs.winehq.org/show_bug.cgi?id=32328 "Many .NET and Silverlight applications require SIO_ADDRESS_LIST_CHANGE for interface change notifications"))

10
debian/changelog vendored
View File

@ -1,3 +1,13 @@
wine-compholio (1.7.23) UNRELEASED; urgency=low
* Fix failing Junction Point test.
* Fix possible race conditions in strmbase/quartz.
* Fix race condition between EndOfStream and Pause.
* Return correct IMediaSeeking stream positions in quartz.
* Make sure LICENSE files are included in the Debian packages.
* Downgraded Arial replacement font to Liberation Sans v1.07.3.
* Remove relative Junction Point linking for now (breaks tests).
-- Erich E. Hoover <erich.e.hoover@gmail.com> Tue, 22 Jul 2014 21:29:47 -0600
wine-compholio (1.7.22) unstable; urgency=low
* Implement passing ACLs to CreateProcess.
* Removed several patches (accepted upstream).

View File

@ -265,7 +265,7 @@ def generate_makefile(patches, fp):
README_template = """wine-compholio
==============
The Wine \"Compholio\" Edition repository includes a variety of patches ") for
The Wine \"Compholio\" Edition repository includes a variety of patches for
Wine to run common Windows applications under Linux.
These patches fix the following Wine bugs:

View File

@ -1,4 +1,8 @@
documentation/README.*
ANNOUNCE
AUTHORS
README
LICENSE
LICENSE.wine-compholio
LICENSE.Liberation
LICENSE.LGPLv2.1
README

View File

@ -1,17 +1,18 @@
From cc928f1a52250242fd9e3dec8cd159216535f08f Mon Sep 17 00:00:00 2001
From 18631ce985f75851cd6f00eb8ff03aa7d3e852ec Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 21:03:47 -0700
Subject: kernel32: Advertise junction point support.
---
dlls/kernel32/volume.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
dlls/kernel32/volume.c | 3 ++-
dlls/ntdll/tests/file.c | 7 +++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/dlls/kernel32/volume.c b/dlls/kernel32/volume.c
index 1509d73..1e3ff7b 100644
index d396764..0fb0aef 100644
--- a/dlls/kernel32/volume.c
+++ b/dlls/kernel32/volume.c
@@ -853,7 +853,8 @@ fill_fs_info: /* now fill in the information that depends on the file system ty
@@ -854,7 +854,8 @@ fill_fs_info: /* now fill in the information that depends on the file system ty
default:
if (fsname) lstrcpynW( fsname, ntfsW, fsname_len );
if (filename_len) *filename_len = 255;
@ -21,6 +22,24 @@ index 1509d73..1e3ff7b 100644
break;
}
ret = TRUE;
diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c
index acc9197..3112081 100644
--- a/dlls/ntdll/tests/file.c
+++ b/dlls/ntdll/tests/file.c
@@ -2799,10 +2799,9 @@ static void test_junction_points(void)
memset(&new_attrib, 0x00, sizeof(new_attrib));
dwret = NtQueryInformationFile(hJunction, &iosb, &new_attrib, sizeof(new_attrib), FileBasicInformation);
ok(dwret == STATUS_SUCCESS, "Failed to get junction point folder's attributes (0x%x).\n", dwret);
- /* conversion bug: we see 0x1c9c380deadbee6 on Wine */
- todo_wine ok(old_attrib.LastAccessTime.QuadPart == new_attrib.LastAccessTime.QuadPart,
- "Junction point folder's access time does not match (0x%llx != 0x%llx).\n",
- new_attrib.LastAccessTime.QuadPart, old_attrib.LastAccessTime.QuadPart);
+ ok(old_attrib.LastAccessTime.QuadPart == new_attrib.LastAccessTime.QuadPart,
+ "Junction point folder's access time does not match (0x%llx != 0x%llx).\n",
+ new_attrib.LastAccessTime.QuadPart, old_attrib.LastAccessTime.QuadPart);
CloseHandle(hJunction);
/* Check deleting a junction point as if it were a directory */
--
1.7.9.5

View File

@ -1,69 +0,0 @@
From f8bf15e30d5e0b9e30ceb644c07449b7782efb72 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 21:07:43 -0700
Subject: ntdll: Use relative paths for creating links.
---
dlls/ntdll/file.c | 39 +++++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index b4e06d1..6907b2b 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -1487,6 +1487,7 @@ NTSTATUS FILE_CreateSymlink(HANDLE handle, REPARSE_DATA_BUFFER *buffer)
int dest_fd, needs_close;
UNICODE_STRING nt_dest;
NTSTATUS status;
+ char *p;
if ((status = server_get_unix_fd( handle, FILE_SPECIAL_ACCESS, &dest_fd, &needs_close, NULL, NULL )))
return status;
@@ -1500,6 +1501,44 @@ NTSTATUS FILE_CreateSymlink(HANDLE handle, REPARSE_DATA_BUFFER *buffer)
goto cleanup;
dest_allocated = TRUE;
+ p = strstr(unix_src.Buffer, "/dosdevices/");
+ if (p)
+ {
+ int count = -1; /* do not count the slash at the end of dosdevices or the last directory */
+
+ p += 11; /* strlen("/dosdevices") */
+ do
+ {
+ p++; /* skip the slash */
+ count++;
+ p = strchr(p, '/');
+ } while(p);
+ FIXME("found %d directories up.\n", count);
+ p = strstr(unix_dest.Buffer, "/dosdevices/");
+ if (p)
+ {
+ ANSI_STRING tmp;
+ int dest_len;
+ char *d;
+
+ p += 12; /* strlen("/dosdevices/") */
+ dest_len = unix_dest.Length - (p-unix_dest.Buffer) + 1;
+ tmp.Length = dest_len + 3*count; /* strlen("../") = 3 */
+ tmp.Buffer = RtlAllocateHeap(GetProcessHeap(), 0, tmp.Length);
+ d = tmp.Buffer;
+ for(; count > 0; count--)
+ {
+ (d++)[0] = '.';
+ (d++)[0] = '.';
+ (d++)[0] = '/';
+ }
+ memcpy(d, p, dest_len);
+ RtlFreeAnsiString( &unix_dest );
+ unix_dest.Length = tmp.Length;
+ unix_dest.Buffer = tmp.Buffer;
+ }
+ }
+
TRACE("Linking %s to %s\n", unix_src.Buffer, unix_dest.Buffer);
/* Produce the link in a temporary location */
--
1.7.9.5

View File

@ -1,4 +1,4 @@
Author: Erich E. Hoover
Subject: Implement missing fonts expected by Silverlight.
Author: Torsten Kurbad
Subject: Implement missing Arial font expected by Silverlight.
Revision: 1
Fixes: [32323] Implement an Arial replacement font

View File

@ -0,0 +1,27 @@
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

View File

@ -0,0 +1,37 @@
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

View File

@ -0,0 +1,37 @@
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

View File

@ -0,0 +1,27 @@
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

View File

@ -0,0 +1,27 @@
From 90faffc9d768d674eb603dabe72b107444e19712 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 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/quartz/videorenderer.c b/dlls/quartz/videorenderer.c
index 4e8f359..5fe0aea 100644
--- a/dlls/quartz/videorenderer.c
+++ b/dlls/quartz/videorenderer.c
@@ -377,8 +377,8 @@ static HRESULT WINAPI VideoRenderer_EndFlush(BaseRenderer* iface)
LeaveCriticalSection(&iface->csRenderLock);
LeaveCriticalSection(&iface->filter.csFilter);
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

View File

@ -0,0 +1,25 @@
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

View File

@ -0,0 +1,4 @@
Author: Erich E. Hoover
Subject: Fix possible race conditions in strmbase/quartz.
Revision: 1
Fixes: [31566] Fix race conditions and deadlocks in strmbase/quartz

Some files were not shown because too many files have changed in this diff Show More