forked from amazingfate/loongoffice
* external/python3/python-3.3.3-aix.patch.1: most of it doesn't apply and AIX port isn't maintained anyway so remove it for now * external/python3/ubsan.patch.0: apparently one of the files was removed * 0001-3.6-bpo-17239-Disable-external-entities-in-SAX-parse.patch.1: fixed upstream * python3-osx-avoid-new-10.13.patch.1: replace with simply passing ac_cv_func_utimensat=no to configure * external/python3/python-3.5.4-ssl.patch.1: project files to build OpenSSL removed upstream * There have been changes to how python locates OpenSSL; new variables OPENSSL_INCLUDES etc; it turns out that you have to pass one directory to --with-openssl, as the variables cannot be passed * libuuid.so.1 is a new dependency of the _uuid module * libffi.so.6 is a new dependency of the _ctypes module (the bundled copy of libffi for non-Darwin platforms was removed) * python-3.3.0-pythreadstate.patch.1: the PyThreadState functions have been changed such that CppunitTest_services asserts when there is a PyThreadAttach on top of PyThreadDetach on top of PyThreadAttach, i.e., 2 PyThreadState per thread (PyGILState_Check() fails). Instead of patching in additional workarounds, change PyThreadAttach so that it re-uses an existing PyThreadState if one exists for the thread. Change-Id: I24c19d79b43a30709261fd9db66312b2e3872fd9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/84765 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
21 lines
995 B
Plaintext
21 lines
995 B
Plaintext
--- Modules/_ctypes/libffi_osx/x86/x86-ffi64.c
|
|
+++ Modules/_ctypes/libffi_osx/x86/x86-ffi64.c
|
|
@@ -599,9 +599,15 @@
|
|
tramp = (volatile unsigned short*)&closure->tramp[0];
|
|
|
|
tramp[0] = 0xbb49; /* mov <code>, %r11 */
|
|
- *(void* volatile*)&tramp[1] = ffi_closure_unix64;
|
|
+ tramp[1] = (unsigned short) ffi_closure_unix64;
|
|
+ tramp[2] = (unsigned short) (((unsigned long)ffi_closure_unix64) >> 16);
|
|
+ tramp[3] = (unsigned short) (((unsigned long)ffi_closure_unix64) >> 32);
|
|
+ tramp[4] = (unsigned short) (((unsigned long)ffi_closure_unix64) >> 48);
|
|
tramp[5] = 0xba49; /* mov <data>, %r10 */
|
|
- *(void* volatile*)&tramp[6] = closure;
|
|
+ tramp[6] = (unsigned short) closure;
|
|
+ tramp[7] = (unsigned short) (((unsigned long)closure) >> 16);
|
|
+ tramp[8] = (unsigned short) (((unsigned long)closure) >> 32);
|
|
+ tramp[9] = (unsigned short) (((unsigned long)closure) >> 48);
|
|
|
|
/* Set the carry bit if the function uses any sse registers.
|
|
This is clc or stc, together with the first byte of the jmp. */
|