[Libreoffice-commits] core.git: 3 commits - i18npool/source include/svl setup_native/Library_getuid.mk

Stephan Bergmann sbergman at redhat.com
Wed Jul 2 07:11:54 PDT 2014


 i18npool/source/breakiterator/xdictionary.cxx |   22 +++++++++++-----------
 include/svl/inethist.hxx                      |   20 ++++++++++----------
 setup_native/Library_getuid.mk                |    2 +-
 3 files changed, 22 insertions(+), 22 deletions(-)

New commits:
commit be8d4a5d8aa711e8eb9265fd38d17c8290770a0e
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Jul 2 16:07:07 2014 +0200

    -fsanitize=function
    
    Change-Id: I29d648c45471e6d3503922ff00f7cd6491bb88f3

diff --git a/i18npool/source/breakiterator/xdictionary.cxx b/i18npool/source/breakiterator/xdictionary.cxx
index ddf6f20..1067e33 100644
--- a/i18npool/source/breakiterator/xdictionary.cxx
+++ b/i18npool/source/breakiterator/xdictionary.cxx
@@ -169,17 +169,17 @@ void xdictionary::initDictionaryData(const sal_Char *pLang)
     aBuf.appendAscii( "dict_" ).appendAscii( pLang ).appendAscii( SAL_DLLEXTENSION );
     aEntry.mhModule = osl_loadModuleRelative( &thisModule, aBuf.makeStringAndClear().pData, SAL_LOADMODULE_DEFAULT );
     if( aEntry.mhModule ) {
-        sal_IntPtr (*func)();
-        func = (sal_IntPtr(*)()) osl_getFunctionSymbol( aEntry.mhModule, OUString("getExistMark").pData );
-        aEntry.maData.existMark = (sal_uInt8*) (*func)();
-        func = (sal_IntPtr(*)()) osl_getFunctionSymbol( aEntry.mhModule, OUString("getIndex1").pData );
-        aEntry.maData.index1 = (sal_Int16*) (*func)();
-        func = (sal_IntPtr(*)()) osl_getFunctionSymbol( aEntry.mhModule, OUString("getIndex2").pData );
-        aEntry.maData.index2 = (sal_Int32*) (*func)();
-        func = (sal_IntPtr(*)()) osl_getFunctionSymbol( aEntry.mhModule, OUString("getLenArray").pData );
-        aEntry.maData.lenArray = (sal_Int32*) (*func)();
-        func = (sal_IntPtr(*)()) osl_getFunctionSymbol( aEntry.mhModule, OUString("getDataArea").pData );
-        aEntry.maData.dataArea = (sal_Unicode*) (*func)();
+        oslGenericFunction func;
+        func = osl_getAsciiFunctionSymbol( aEntry.mhModule, "getExistMark" );
+        aEntry.maData.existMark = ((sal_uInt8 const * (*)()) func)();
+        func = osl_getAsciiFunctionSymbol( aEntry.mhModule, "getIndex1" );
+        aEntry.maData.index1 = ((sal_Int16 const * (*)()) func)();
+        func = osl_getAsciiFunctionSymbol( aEntry.mhModule, "getIndex2" );
+        aEntry.maData.index2 = ((sal_Int32 const * (*)()) func)();
+        func = osl_getAsciiFunctionSymbol( aEntry.mhModule, "getLenArray" );
+        aEntry.maData.lenArray = ((sal_Int32 const * (*)()) func)();
+        func = osl_getAsciiFunctionSymbol( aEntry.mhModule, "getDataArea" );
+        aEntry.maData.dataArea = ((sal_Unicode const * (*)()) func)();
     }
 
     data = aEntry.maData;
commit 80a1a2599e04142683d2286d0e32d0e13fb45de3
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Jul 2 16:01:51 2014 +0200

    Generally better to have DLLPUBLIC class with some DLLPRIVATE members
    
    ...than the other way around an implicitly DLLPRIVATE class with some DLLPUBLIC
    members, so that any symbols implicitly added by the compiler have the right
    visibility (e.g., RTTI as needed by -fsanitize=function).
    
    Change-Id: I4898dee0ccc6fdc4e7e1f3fb19db94661563444f

diff --git a/include/svl/inethist.hxx b/include/svl/inethist.hxx
index 96e728a..91964f8 100644
--- a/include/svl/inethist.hxx
+++ b/include/svl/inethist.hxx
@@ -25,9 +25,9 @@
 #include <tools/urlobj.hxx>
 
 class INetURLHistory_Impl;
-class INetURLHistory : public SfxBroadcaster
+class SVL_DLLPUBLIC INetURLHistory : public SfxBroadcaster
 {
-    struct StaticInstance
+    struct SAL_DLLPRIVATE StaticInstance
     {
         INetURLHistory * operator()();
     };
@@ -39,25 +39,25 @@ class INetURLHistory : public SfxBroadcaster
 
     /** Construction/Destruction.
     */
-    INetURLHistory (void);
-    virtual ~INetURLHistory (void);
+    SAL_DLLPRIVATE INetURLHistory (void);
+    SAL_DLLPRIVATE virtual ~INetURLHistory (void);
 
     /** Implementation.
     */
-    static void NormalizeUrl_Impl (INetURLObject &rUrl);
+    SAL_DLLPRIVATE static void NormalizeUrl_Impl (INetURLObject &rUrl);
 
-    SVL_DLLPUBLIC void PutUrl_Impl   (const INetURLObject &rUrl);
-    SVL_DLLPUBLIC bool QueryUrl_Impl (const INetURLObject &rUrl);
+    void PutUrl_Impl   (const INetURLObject &rUrl);
+    bool QueryUrl_Impl (const INetURLObject &rUrl);
 
     /** Not implemented.
     */
-    INetURLHistory (const INetURLHistory&);
-    INetURLHistory& operator= (const INetURLHistory&);
+    SAL_DLLPRIVATE INetURLHistory (const INetURLHistory&);
+    SAL_DLLPRIVATE INetURLHistory& operator= (const INetURLHistory&);
 
 public:
     /** GetOrCreate.
     */
-    SVL_DLLPUBLIC static INetURLHistory* GetOrCreate (void);
+    static INetURLHistory* GetOrCreate (void);
 
     /** QueryProtocol.
     */
commit b0080192e51fe80b682d805c19530da0655b4667
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Jul 2 15:56:23 2014 +0200

    Filter out all -fsanitize= args when building libgetuid.so
    
    Change-Id: Iaac0507c3f62c57a95a65972cba7575d04bd177e

diff --git a/setup_native/Library_getuid.mk b/setup_native/Library_getuid.mk
index ffd6c84..650cfaf 100644
--- a/setup_native/Library_getuid.mk
+++ b/setup_native/Library_getuid.mk
@@ -15,7 +15,7 @@ $(eval $(call gb_Library_add_defs,getuid,\
 ))
 endif
 
-$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktarget,getuid)) : gb_CC := $(filter-out -fsanitize=address,$(gb_CC))
+$(call gb_LinkTarget_get_target,$(call gb_Library_get_linktarget,getuid)) : gb_CC := $(filter-out -fsanitize=%,$(gb_CC))
 
 # the library is used by LD_PRELOAD; make sure that we see the symbols ;-)
 ifeq ($(COM),GCC)


More information about the Libreoffice-commits mailing list