diff options
author | Maho Nakata <maho@FreeBSD.org> | 2012-05-19 08:00:15 +0000 |
---|---|---|
committer | Maho Nakata <maho@FreeBSD.org> | 2012-05-19 08:00:15 +0000 |
commit | 74e2f74a161aa376446a3ba300f301cb9143dead (patch) | |
tree | 4d5b7b44759e1e456322670784319e1ef2783e2b /editors/openoffice-3 | |
parent | b2f63f2ae38dd919a840644947c99f735951af60 (diff) | |
download | ports-74e2f74a161aa376446a3ba300f301cb9143dead.tar.gz ports-74e2f74a161aa376446a3ba300f301cb9143dead.zip |
Notes
Diffstat (limited to 'editors/openoffice-3')
-rw-r--r-- | editors/openoffice-3/files/patch-doublemmap | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/editors/openoffice-3/files/patch-doublemmap b/editors/openoffice-3/files/patch-doublemmap new file mode 100644 index 000000000000..35397bd2b33f --- /dev/null +++ b/editors/openoffice-3/files/patch-doublemmap @@ -0,0 +1,65 @@ +Index: bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx +=================================================================== +--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx (revision 1337224) ++++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx (working copy) +@@ -355,7 +355,7 @@ + int const codeSnippetSize = 16; + + unsigned char * codeSnippet( +- unsigned char * code, sal_Int32 functionIndex, sal_Int32 vtableOffset, ++ unsigned char * code, sal_PtrDiff writetoexecdiff, sal_Int32 functionIndex, sal_Int32 vtableOffset, + typelib_TypeClass returnTypeClass) + { + if (!bridges::cpp_uno::shared::isSimpleType(returnTypeClass)) { +@@ -401,7 +401,7 @@ + // jmp privateSnippetExecutor: + *p++ = 0xE9; + *reinterpret_cast< sal_Int32 * >(p) +- = ((unsigned char *) exec) - p - sizeof (sal_Int32); ++ = ((unsigned char *) exec) - p - sizeof (sal_Int32) - writetoexecdiff; + p += sizeof (sal_Int32); + OSL_ASSERT(p - code <= codeSnippetSize); + return code + codeSnippetSize; +@@ -434,7 +434,7 @@ + } + + unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( +- Slot ** slots, unsigned char * code, ++ Slot ** slots, unsigned char * code, sal_PtrDiff writetoexecdiff, + typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, + sal_Int32 functionCount, sal_Int32 vtableOffset) + { +@@ -447,9 +447,9 @@ + switch (member->eTypeClass) { + case typelib_TypeClass_INTERFACE_ATTRIBUTE: + // Getter: +- (s++)->fn = code; ++ (s++)->fn = code + writetoexecdiff; + code = codeSnippet( +- code, functionOffset++, vtableOffset, ++ code, writetoexecdiff, functionOffset++, vtableOffset, + reinterpret_cast< typelib_InterfaceAttributeTypeDescription * >( + member)->pAttributeTypeRef->eTypeClass); + // Setter: +@@ -457,17 +457,17 @@ + typelib_InterfaceAttributeTypeDescription * >( + member)->bReadOnly) + { +- (s++)->fn = code; ++ (s++)->fn = code + writetoexecdiff; + code = codeSnippet( +- code, functionOffset++, vtableOffset, ++ code, writetoexecdiff, functionOffset++, vtableOffset, + typelib_TypeClass_VOID); + } + break; + + case typelib_TypeClass_INTERFACE_METHOD: +- (s++)->fn = code; ++ (s++)->fn = code + writetoexecdiff; + code = codeSnippet( +- code, functionOffset++, vtableOffset, ++ code, writetoexecdiff, functionOffset++, vtableOffset, + reinterpret_cast< typelib_InterfaceMethodTypeDescription * >( + member)->pReturnTypeRef->eTypeClass); + break; |