diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2016-03-23 21:03:10 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2016-03-23 21:03:10 +0300 |
commit | 67300ec3af5dfa0f87f43866ff79679f47d57827 (patch) | |
tree | bb9d4bc66c650c157d56c2423fa9a4468eb8e6ae | |
parent | c5efb12613aee29f8a9556a66e60598170a0bf27 (diff) |
wine: sync with gentoo upstream
4 files changed, 161 insertions, 0 deletions
diff --git a/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-post.patch b/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-post.patch new file mode 100644 index 0000000..c36dd4d --- /dev/null +++ b/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-post.patch @@ -0,0 +1,51 @@ +From 2f0514345d325ecd20a88e3b0cb896ca9d23deae Mon Sep 17 00:00:00 2001 +From: Sebastian Lackner <sebastian@fds-team.de> +Date: Thu, 19 Mar 2015 07:56:04 +0100 +Subject: Reapply various changes conflicting with Maarten Lankhorst's + gstreamer hack v5. + +--- + dlls/ntdll/ntdll_misc.h | 1 + + dlls/ntdll/thread.c | 7 +++++++ + 2 files changed, 8 insertions(+) + +diff --git a/dlls/ntdll/ntdll_misc.h b/dlls/ntdll/ntdll_misc.h +index e1be304..d5bc678 100644 +--- a/dlls/ntdll/ntdll_misc.h ++++ b/dlls/ntdll/ntdll_misc.h +@@ -244,6 +244,7 @@ struct ntdll_thread_data + WINE_VM86_TEB_INFO vm86; /* 1fc vm86 private data */ + void *exit_frame; /* 204 exit frame pointer */ + #endif ++ void *pthread_stack; /* 208/318 pthread stack */ + struct list entry; + BOOL detached; + }; +diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c +index 2011c1e2..9f824eb 100644 +--- a/dlls/ntdll/thread.c ++++ b/dlls/ntdll/thread.c +@@ -467,6 +467,8 @@ static void exit_thread_common( int status ) + static void *prev_teb; + TEB *teb; + #endif ++ shmlocal_t *shmlocal; ++ sigset_t sigset; + + if (status) /* send the exit code to the server (0 is already the default) */ + { +@@ -508,6 +510,11 @@ static void exit_thread_common( int status ) + reap_thread(NtCurrentTeb()); + #endif + ++ sigemptyset( &sigset ); ++ sigaddset( &sigset, SIGQUIT ); ++ pthread_sigmask( SIG_BLOCK, &sigset, NULL ); ++ if (interlocked_xchg_add( &nb_threads, -1 ) <= 1) _exit( status ); ++ + close( ntdll_get_thread_data()->wait_fd[0] ); + close( ntdll_get_thread_data()->wait_fd[1] ); + close( ntdll_get_thread_data()->reply_fd ); +-- +2.6.4 + diff --git a/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-pre.patch b/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-pre.patch new file mode 100644 index 0000000..e9c9ac1 --- /dev/null +++ b/app-emulation/wine/files/wine-1.7.55-gstreamer-v5-staging-pre.patch @@ -0,0 +1,53 @@ +From c96187cdbddd742728557062b85d05ac320c3e8f Mon Sep 17 00:00:00 2001 +From: Sebastian Lackner <sebastian@fds-team.de> +Date: Thu, 19 Mar 2015 07:51:48 +0100 +Subject: Revert various changes conflicting with Maarten Lankhorst's gstreamer + hack v5. + +Note: These changes have to be reapplied with the corresponding -post patchset +afterwards. +--- + dlls/ntdll/ntdll_misc.h | 1 - + dlls/ntdll/thread.c | 7 ------- + 2 files changed, 8 deletions(-) + +diff --git a/dlls/ntdll/ntdll_misc.h b/dlls/ntdll/ntdll_misc.h +index e7facf3..88531df 100644 +--- a/dlls/ntdll/ntdll_misc.h ++++ b/dlls/ntdll/ntdll_misc.h +@@ -243,7 +243,6 @@ struct ntdll_thread_data + WINE_VM86_TEB_INFO vm86; /* 1fc vm86 private data */ + void *exit_frame; /* 204 exit frame pointer */ + #endif +- void *pthread_stack; /* 208/318 pthread stack */ + }; + + C_ASSERT( FIELD_OFFSET(TEB, SpareBytes1) + sizeof(struct ntdll_thread_data) <= +diff --git a/dlls/ntdll/thread.c b/dlls/ntdll/thread.c +index 6ad4b95..3ad51a2 100644 +--- a/dlls/ntdll/thread.c ++++ b/dlls/ntdll/thread.c +@@ -391,8 +391,6 @@ void terminate_thread( int status ) + void exit_thread( int status ) + { + static void *prev_teb; +- shmlocal_t *shmlocal; +- sigset_t sigset; + TEB *teb; + + if (status) /* send the exit code to the server (0 is already the default) */ +@@ -431,11 +429,6 @@ void exit_thread( int status ) + } + } + +- sigemptyset( &sigset ); +- sigaddset( &sigset, SIGQUIT ); +- pthread_sigmask( SIG_BLOCK, &sigset, NULL ); +- if (interlocked_xchg_add( &nb_threads, -1 ) <= 1) _exit( status ); +- + close( ntdll_get_thread_data()->wait_fd[0] ); + close( ntdll_get_thread_data()->wait_fd[1] ); + close( ntdll_get_thread_data()->reply_fd ); +-- +2.6.4 + diff --git a/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch b/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch new file mode 100644 index 0000000..2166865 --- /dev/null +++ b/app-emulation/wine/files/wine-1.9.5-multilib-portage.patch @@ -0,0 +1,22 @@ +--- configure.ac.orig 2016-03-05 20:53:50.574628728 -0500 ++++ configure.ac 2016-03-05 20:57:54.945617833 -0500 +@@ -141,6 +141,9 @@ + then + CC="$CC -m32" + CXX="$CXX -m32" ++ CFLAGS="$CFLAGS -m32" ++ LDFLAGS="$LDFLAGS -m32" ++ CXXFLAGS="$CXXFLAGS -m32" + AC_MSG_CHECKING([whether $CC works]) + AC_LINK_IFELSE([AC_LANG_PROGRAM()],AC_MSG_RESULT([yes]), + [AC_MSG_RESULT([no]) +@@ -160,6 +163,9 @@ + fi + CC="$CC -m64" + CXX="$CXX -m64" ++ CFLAGS="$CFLAGS -m64" ++ LDFLAGS="$LDFLAGS -m64" ++ CXXFLAGS="$CXXFLAGS -m64" + host_cpu="x86_64" + notice_platform="64-bit " + AC_SUBST(TARGETFLAGS,"-m64") diff --git a/app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch b/app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch new file mode 100644 index 0000000..213f2c6 --- /dev/null +++ b/app-emulation/wine/files/wine-gcc-4.9-null-pointer.patch @@ -0,0 +1,35 @@ +From deb274226783ab886bdb44876944e156757efe2b Mon Sep 17 00:00:00 2001 +From: Daniel Beitler <dan@dablabs.com> +Date: Sun, 18 May 2014 13:27:42 -0400 +Subject: [PATCH] msi: Prevent call to memset with a null pointer in + get_tablecolumns function. + +--- + dlls/msi/table.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/dlls/msi/table.c b/dlls/msi/table.c +index 8012369..9ed9421 100644 +--- a/dlls/msi/table.c ++++ b/dlls/msi/table.c +@@ -671,7 +671,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF + /* Note: _Columns table doesn't have non-persistent data */ + + /* if maxcount is non-zero, assume it's exactly right for this table */ +- memset( colinfo, 0, maxcount * sizeof(*colinfo) ); ++ if (colinfo) memset( colinfo, 0, maxcount * sizeof(*colinfo) ); + count = table->row_count; + for (i = 0; i < count; i++) + { +@@ -684,7 +684,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF + /* check the column number is in range */ + if (col < 1 || col > maxcount) + { +- ERR("column %d out of range\n", col); ++ ERR("column %d out of range (maxcount: %d)\n", col, maxcount); + continue; + } + /* check if this column was already set */ +-- +1.9.1 + |