[Libreoffice-commits] core.git: Branch 'feature/pyweb-wizard' - 108 commits - android/sdremote avmedia/source basctl/source basebmp/test basic/source bean/native bridges/source canvas/source chart2/source codemaker/inc codemaker/source comphelper/inc comphelper/source config_host/config_features.h.in config_host.mk.in config_host/README configure.ac connectivity/inc connectivity/Library_postgresql-sdbc-impl.mk connectivity/source cppcanvas/source cppuhelper/inc cppunit/ExternalPackage_cppunit.mk cui/source dbaccess/inc dbaccess/source desktop/source desktop/unx editeng/source embedserv/source extensions/source filter/Configuration_filter.mk filter/source forms/source formula/source fpicker/source framework/inc framework/source helpcontent2 hwpfilter/source i18npool/source i18nutil/source icu/ExternalProject_icu.mk idlc/source jvmfwk/plugins jvmfwk/source l10ntools/source libmariadb/configs libpng/StaticLibrary_png.mk lingucomponent/source logerrit lotuswordpro/source Makefile.in oox/sourc e package/source padmin/source postprocess/Rdb_services.mk registry/source remotebridges/source reportdesign/source RepositoryExternal.mk rsc/inc rsc/source sal/android sal/inc sal/osl sal/qa sal/rtl sax/source scaddins/source sccomp/source sc/inc scp2/source sc/qa scripting/source sc/source sd/source sfx2/inc sfx2/source shell/source solenv/bin solenv/gbuild soltools/cpp sot/source starmath/source stoc/source svtools/inc svtools/source svx/source sw/inc sw/qa sw/source toolkit/source tools/source ucb/source unodevtools/Executable_skeletonmaker.mk unodevtools/inc unodevtools/source vbahelper/source vcl/aqua vcl/generic vcl/headless vcl/inc vcl/source vcl/unx vcl/win wizards/com wizards/Module_wizards.mk wizards/Pyuno_commonwizards.mk wizards/Pyuno_web.mk writerfilter/source writerperfect/source xmloff/source xmlsecurity/source

Javier Fernandez jfernandez at igalia.com
Wed Mar 27 05:19:14 PDT 2013


Rebased ref, commits from common ancestor:
commit 1a125dcf2903e509f3f3eb455a44030bfe170f90
Author: Javier Fernandez <jfernandez at igalia.com>
Date:   Wed Mar 6 10:04:59 2013 +0000

    Pack and register the Web wizard.
    
    Change-Id: I8e43d228e842f24b054afc6bf59040667a6703d5

diff --git a/postprocess/Rdb_services.mk b/postprocess/Rdb_services.mk
index 805a1e8..75f1bfb 100644
--- a/postprocess/Rdb_services.mk
+++ b/postprocess/Rdb_services.mk
@@ -170,6 +170,7 @@ $(eval $(call gb_Rdb_add_components,services,\
 		wizards/com/sun/star/wizards/fax/fax \
 		wizards/com/sun/star/wizards/letter/letter \
 		wizards/com/sun/star/wizards/agenda/agenda \
+		wizards/com/sun/star/wizards/web/web \
 		scripting/source/stringresource/stringresource \
 		scripting/source/vbaevents/vbaevents \
 		scripting/util/scriptframe \
diff --git a/scp2/source/ooo/directory_ooo.scp b/scp2/source/ooo/directory_ooo.scp
index 65acecc..6a16cb8 100644
--- a/scp2/source/ooo/directory_ooo.scp
+++ b/scp2/source/ooo/directory_ooo.scp
@@ -121,6 +121,12 @@ Directory gid_Dir_Wizards_Agenda
     DosName = "agenda";
 End
 
+Directory gid_Dir_Wizards_Web
+    Styles = (CREATE);
+    ParentID = gid_Dir_Wizards;
+    DosName = "web";
+End
+
 Directory gid_Dir_Resource
     ParentID = gid_Brand_Dir_Program;
     DosName = "resource";
diff --git a/scp2/source/ooo/file_ooo.scp b/scp2/source/ooo/file_ooo.scp
index dab412c..828671a 100644
--- a/scp2/source/ooo/file_ooo.scp
+++ b/scp2/source/ooo/file_ooo.scp
@@ -506,6 +506,12 @@ File gid_File_Wizards_Agenda
     Name = "agenda.zip";
 End
 
+File gid_File_Wizards_Web
+    Dir = gid_Dir_Wizards_Web;
+    ARCHIVE_TXT_FILE_BODY;
+    Name = "web.zip";
+End
+
 File gid_File_Pymailmerge
     Dir = gid_Brand_Dir_Program;
     ARCHIVE_TXT_FILE_BODY;
diff --git a/wizards/Module_wizards.mk b/wizards/Module_wizards.mk
index 14d6c05..8aaf41c 100644
--- a/wizards/Module_wizards.mk
+++ b/wizards/Module_wizards.mk
@@ -37,6 +37,7 @@ $(eval $(call gb_Module_add_targets,wizards,\
 	Pyuno_fax \
 	Pyuno_letter \
 	Pyuno_agenda \
+	Pyuno_web \
 	Pyuno_commonwizards \
 	Zip_depot \
 	Zip_euro \
diff --git a/wizards/Pyuno_commonwizards.mk b/wizards/Pyuno_commonwizards.mk
index f213bb1..2fc4d4e 100644
--- a/wizards/Pyuno_commonwizards.mk
+++ b/wizards/Pyuno_commonwizards.mk
@@ -42,6 +42,10 @@ $(eval $(call gb_Pyuno_add_files,wizards,\
     common/Desktop.py \
     common/HelpIds.py \
     common/NumberFormatter.py \
+    common/IRenderer.py \
+    common/UCB.py \
+    common/XMLHelper.py \
+    common/XMLProvider.py \
     text/TextElement.py \
     document/__init__.py \
     document/OfficeDocument.py \
@@ -66,6 +70,9 @@ $(eval $(call gb_Pyuno_add_files,wizards,\
     ui/event/ListModelBinder.py \
     ui/event/RadioDataAware.py \
     ui/event/UnoDataAware.py \
+    ui/event/Task.py \
+    ui/event/TaskEvent.py \
+    ui/event/TaskListener.py \
 ))
 
 # vim:set noet sw=4 ts=4:
diff --git a/wizards/com/sun/star/wizards/web/web.component b/wizards/com/sun/star/wizards/web/web.component
index 27bde3a..64e325f 100644
--- a/wizards/com/sun/star/wizards/web/web.component
+++ b/wizards/com/sun/star/wizards/web/web.component
@@ -17,10 +17,9 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  -->
 
-<component loader="com.sun.star.loader.Java2"
+<component loader="com.sun.star.loader.Python"
     xmlns="http://openoffice.org/2010/uno-components">
-  <implementation
-      name="com.sun.star.wizards.web.CallWizard$WizardImplementation">
-    <service name="com.sun.star.wizards.web.CallWizard"/>
+  <implementation name="com.sun.star.wizards.web.CallWizard">
+    <service name="com.sun.star.task.Job"/>
   </implementation>
 </component>
commit 6db890bfbb4cc86d0963599b70033b4eb32ff154
Author: Javier Fernandez <jfernandez at igalia.com>
Date:   Fri Mar 8 12:56:16 2013 +0000

    Ugly Hack: using our own WebConfigSet while the Topic stuff is not integrated.
    
    Change-Id: I0df92af6b01e5eab99212bb1587f7165c70fd59b

diff --git a/wizards/Pyuno_web.mk b/wizards/Pyuno_web.mk
new file mode 100644
index 0000000..93b312f
--- /dev/null
+++ b/wizards/Pyuno_web.mk
@@ -0,0 +1,80 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Red Hat, Inc., David Tardon <dtardon at redhat.com>
+#  (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_Pyuno_Pyuno,web,$(SRCDIR)/wizards/com/sun/star/wizards/web))
+
+$(eval $(call gb_Pyuno_add_files,web,\
+	CallWizard.py \
+	BackgroundsDialog.py \
+	ErrorHandler.py \
+	AbstractErrorHandler.py \
+	FTPDialog.py \
+	FTPDialogResources.py \
+	IconsDialog.py \
+	ImageListDialog.py \
+	LogTaskListener.py \
+	Process.py \
+	ProcessErrorHandler.py \
+	ProcessErrors.py \
+	ProcessStatusRenderer.py \
+	StatusDialog.py \
+	StylePreview.py \
+	TOCPreview.py \
+	WWD_Events.py \
+	WWD_General.py \
+	WWD_Startup.py \
+	WWHID.py \
+	WebWizard.py \
+	WebWizardConst.py \
+	WebWizardDialog.py \
+	WebWizardDialogResources.py \
+	TypeDetection.py \
+	ExtensionVerifier.py\
+	WebConfigSet.py\
+	__init__.py \
+	data/CGArgument.py \
+	data/CGContent.py \
+	data/CGDesign.py \
+	data/CGDocument.py \
+	data/CGExporter.py \
+	data/CGFilter.py \
+	data/CGGeneralInfo.py \
+	data/CGIconSet.py \
+	data/CGImage.py \
+	data/CGLayout.py \
+	data/CGPublish.py \
+	data/CGSession.py \
+	data/CGSessionName.py \
+	data/CGSettings.py \
+	data/CGStyle.py\
+	data/__init__.py \
+	export/Exporter.py \
+	export/AbstractExporter.py \
+	export/CopyExporter.py \
+	export/__init__.py \
+))
+$(eval $(call gb_Pyuno_set_componentfile_full,web,wizards/com/sun/star/wizards/web/web,vnd.openoffice.pymodule:wizards.web,.CallWizard))
diff --git a/wizards/com/sun/star/wizards/web/WebConfigSet.py b/wizards/com/sun/star/wizards/web/WebConfigSet.py
new file mode 100644
index 0000000..88b49f2
--- /dev/null
+++ b/wizards/com/sun/star/wizards/web/WebConfigSet.py
@@ -0,0 +1,209 @@
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# This file incorporates work covered by the following license notice:
+#
+#   Licensed to the Apache Software Foundation (ASF) under one or more
+#   contributor license agreements. See the NOTICE file distributed
+#   with this work for additional information regarding copyright
+#   ownership. The ASF licenses this file to you under the Apache
+#   License, Version 2.0 (the "License"); you may not use this file
+#   except in compliance with the License. You may obtain a copy of
+#   the License at http://www.apache.org/licenses/LICENSE-2.0 .
+#
+import traceback
+from ..common.ConfigGroup import ConfigGroup
+from ..common.Configuration import Configuration
+from ..common.XMLProvider import XMLProvider
+
+class WebConfigSet(ConfigGroup):
+    '''
+    After reading the configuration set items,
+    the ConfigSet checks this field.
+    If it is true, it will remove any nulls from
+    the vector.
+    subclasses can change this field in the constructor
+    to avoid this "deletion" of nulls.
+    '''
+
+    def __init__(self, childType):
+        print ("DEBUG !!! childType: ", childType)
+        self.childClass = childType
+        self.childrenMap = {}
+        self.childrenList = []
+        self.noNulls = False
+
+    def add(self, name, o):
+        print ("DEBUG !!! WebConfigSet.add -- name: ", name)
+        if (o is None):
+            print ("DEBUG !!! WebConfigSet.add -- Received None object as argument.")
+        oldO = None
+        if (name in self.childrenMap):
+            oldO = self.childrenMap[name]
+        self.childrenMap[name] = o
+        try:
+            i = int(name)
+            print ("DEBUG !!! WebConfigSet.add -- name IS an integer.")
+            self.childrenList.insert(i, o)
+        except Exception:
+            print ("DEBUG !!! WebConfigSet.add -- name IS NOT an integer.")
+            try:
+                i = o.cp_Index
+                print ("DEBUG !!! WebConfigSet.add -- index: ", i)
+                oldSize = self.getSize()
+                print ("DEBUG !!! WebConfigSet.add -- oldSize: ", oldSize)
+                if oldSize < i:
+                    newSize = i - oldSize
+                    self.childrenList += [None] * newSize
+                    self.noNulls |= True
+                else:
+                    self.noNulls |= False
+                print ("DEBUG !!! WebConfigSet.add -- inserting object o: ", o)
+                self.childrenList.insert(i, o)
+                if oldSize > i:
+                    oldSize = i
+            except Exception:
+                if (oldO is not None):
+                    print ("DEBUG !!! WebConfigSet.add -- No cp_Index attribute, but element already present, so replace it.")
+                    i = self.childrenList.index(oldO)
+                    self.childrenList[i] = o
+                else:
+                    print ("DEBUG !!! WebConfigSet.add -- No cp_Index attribute, so just append it.")
+                    self.childrenList.append(o)
+
+
+    def writeConfiguration(self, configView, param):
+        print ("DEBUG !!! writeConfiguration --")
+        names = self.childrenMap.keys()
+        #first I remove all the children from the configuration.
+        children = configView.ElementNames
+        print ("DEBUG !!! writeConfiguration -- children length: ", len(children))
+        if children:
+            print ("DEBUG !!! writeConfiguration -- removing childrens.")
+            for i in children:
+                try:
+                    Configuration.removeNode(configView, i)
+                except Exception:
+                    traceback.print_exc()
+
+        # and add them new.
+        for i in names:
+            try:
+                child = self.getElement(i)
+                childView = Configuration.addConfigNode(configView, i)
+                child.writeConfiguration(childView, param)
+            except Exception:
+                traceback.print_exc()
+
+    def readConfiguration(self, configurationView, param):
+        names = configurationView.ElementNames
+        if names:
+            for i in names:
+                print ("DEBUG !!! readConfiguration -- name: ", i)
+                try:
+                    child = self.childClass()
+                    child.root = self.root
+                    child.readConfiguration(
+                        configurationView.getByName(i), param)
+                    self.add(i, child)
+                except Exception:
+                    traceback.print_exc()
+        #remove any nulls from the list
+        if self.noNulls:
+            i = 0
+            while i < len(self.childrenList):
+                if self.childrenList[i] is None:
+                    del self.childrenList[i]
+                    i -= 1
+                i += 1
+
+    def remove(self, obj):
+        key = getKey(obj)
+        self.childrenMap.remove(key)
+        i = self.childrenList.indexOf(obj)
+        self.childrenList.remove(obj)
+        #fireListDataListenerIntervalRemoved(i, i)
+
+    def remove(self, i):
+        o = getElementAt(i)
+        remove(o)
+
+    def clear(self):
+        self.childrenMap.clear()
+        del self.childrenList[:]
+
+    def createDOM(self, parent):
+        items = self.childrenList
+        i = 0
+        while i < len(items):
+            item = items[i]
+            if isinstance(item, XMLProvider):
+                item.createDOM(parent)
+
+            i += 1
+        return parent
+
+    def getKey(self, _object):
+        for k,v in self.childrenMap.items():
+            if v is _object:
+                return k
+        return None
+
+    def getElementAt(self, i):
+        return self.childrenList[i]
+
+    def getElement(self, o):
+        return self.childrenMap[o]
+
+    def getSize(self):
+        return len(self.childrenList)
+
+    def getIndexOf(self, item):
+        return self.childrenList.index(item)
+
+    '''
+    Set members might include a property
+    which orders them.
+    This method reindexes the given member to be
+    the index number 0
+    Do not forget to call commit() after calling this method.
+    @param confView
+    @param memebrName
+    '''
+
+    def reindexSet(self, confView, memberName, indexPropertyName):
+        '''
+        First I read all memebrs of the set,
+        except the one that should be number 0
+        to a vector, ordered by there index property
+        '''
+        names = Configuration.getChildrenNames(confView)
+        v = []
+        member = None
+        index = 0
+        i = 0
+        while i < len(names):
+            if not names[i] == memberName:
+                member = Configuration.getNode(names[i], confView)
+                index = Configuration.getInt(indexPropertyName, member)
+                while index >= v.size():
+                    v.append(None)
+                v[index] = member
+            '''
+            Now I reindex them
+            '''
+            i += 1
+        index = 1
+        i = 0
+        while i < len(v):
+            member = v[i]
+            if member != None:
+                Configuration.set((index + 1), indexPropertyName, member)
+            i += 1
+
+    def sort(self, comparator):
+        self.childrenList.sort(comparator)
diff --git a/wizards/com/sun/star/wizards/web/data/CGContent.py b/wizards/com/sun/star/wizards/web/data/CGContent.py
index c85d7df..49e3aba 100644
--- a/wizards/com/sun/star/wizards/web/data/CGContent.py
+++ b/wizards/com/sun/star/wizards/web/data/CGContent.py
@@ -16,7 +16,7 @@
 #   the License at http://www.apache.org/licenses/LICENSE-2.0 .
 #
 from ...common.ConfigGroup import ConfigGroup
-from ...common.ConfigSet import ConfigSet
+from ..WebConfigSet import WebConfigSet
 from ...common.XMLHelper import XMLHelper
 from .CGDocument import CGDocument
 
@@ -27,8 +27,8 @@ class CGContent(ConfigGroup):
     cp_Name = str()
     cp_Description = str()
     #COMMENTED
-    #cp_Contents = ConfigSet(CGContent)
-    cp_Documents = ConfigSet(CGDocument())
+    #cp_Contents = WebConfigSet(CGContent)
+    cp_Documents = WebConfigSet(CGDocument())
 
     def createDOM(self, parent):
         myElement = XMLHelper.addElement(
diff --git a/wizards/com/sun/star/wizards/web/data/CGExporter.py b/wizards/com/sun/star/wizards/web/data/CGExporter.py
index 74288c7..0368d0e 100644
--- a/wizards/com/sun/star/wizards/web/data/CGExporter.py
+++ b/wizards/com/sun/star/wizards/web/data/CGExporter.py
@@ -15,7 +15,7 @@
 #   except in compliance with the License. You may obtain a copy of
 #   the License at http://www.apache.org/licenses/LICENSE-2.0 .
 #
-from ...common.ConfigSet import ConfigSet
+from ..WebConfigSet import WebConfigSet
 from ...common.ConfigGroup import ConfigGroup
 from .CGArgument import CGArgument
 
@@ -33,7 +33,7 @@ class CGExporter(ConfigGroup):
     cp_Binary = bool()
     cp_PageType = int()
     targetTypeName = ""
-    cp_Arguments = ConfigSet(CGArgument())
+    cp_Arguments = WebConfigSet(CGArgument)
 
     def supports(self, mime):
         return CGExporter.cp_SupportedMimeTypes == "" or \
diff --git a/wizards/com/sun/star/wizards/web/data/CGSession.py b/wizards/com/sun/star/wizards/web/data/CGSession.py
index 211cea9..a2c32d1 100644
--- a/wizards/com/sun/star/wizards/web/data/CGSession.py
+++ b/wizards/com/sun/star/wizards/web/data/CGSession.py
@@ -18,7 +18,7 @@
 import uno
 
 from ...common.ConfigGroup import ConfigGroup
-from ...common.ConfigSet import ConfigSet
+from ..WebConfigSet import WebConfigSet
 from ...common.XMLHelper import XMLHelper
 from .CGContent import CGContent
 from .CGDesign import CGDesign
@@ -36,7 +36,7 @@ class CGSession(ConfigGroup):
     cp_Content = CGContent()
     cp_Design = CGDesign()
     cp_GeneralInfo = CGGeneralInfo()
-    cp_Publishing = ConfigSet(CGPublish())
+    cp_Publishing = WebConfigSet(CGPublish)
     valid = False
 
     def createDOM(self, parent):
@@ -62,7 +62,7 @@ class CGSession(ConfigGroup):
         return self.root.cp_Layouts.getElement(self.cp_Design.cp_Layout)
 
     def getStyle(self):
-        return self.root.cp_Styles.getElementAt(self.cp_Design.cp_Style)
+        return self.root.cp_Styles.getElement(self.cp_Design.cp_Style)
 
     def createDOM1(self):
         doc = Document()
diff --git a/wizards/com/sun/star/wizards/web/data/CGSettings.py b/wizards/com/sun/star/wizards/web/data/CGSettings.py
index ecada3f..5a8a85f 100644
--- a/wizards/com/sun/star/wizards/web/data/CGSettings.py
+++ b/wizards/com/sun/star/wizards/web/data/CGSettings.py
@@ -21,9 +21,9 @@ from datetime import date as dateTimeObject
 
 from ...common.FileAccess import FileAccess
 from ...common.ConfigGroup import ConfigGroup
-from ...common.ConfigSet import ConfigSet
 from ...common.NumberFormatter import NumberFormatter
 from ...common.Properties import Properties
+from ..WebConfigSet import WebConfigSet
 from .CGExporter import CGExporter
 from .CGLayout import CGLayout
 from .CGStyle import CGStyle
@@ -45,14 +45,14 @@ class CGSettings(ConfigGroup):
     RESOURCE_SIZE_TEMPLATE = 4
 
     cp_WorkDir = str()
-    cp_Exporters = ConfigSet(CGExporter())
-    cp_Layouts = ConfigSet(CGLayout())
-    cp_Styles = ConfigSet(CGStyle())
-    cp_IconSets = ConfigSet(CGIconSet())
-    cp_BackgroundImages = ConfigSet(CGImage())
-    cp_SavedSessions = ConfigSet(CGSessionName())
-    cp_Filters = ConfigSet(CGFilter())
-    savedSessions = ConfigSet(CGSessionName())
+    cp_Exporters = WebConfigSet(CGExporter)
+    cp_Layouts = WebConfigSet(CGLayout)
+    cp_Styles = WebConfigSet(CGStyle)
+    cp_IconSets = WebConfigSet(CGIconSet)
+    cp_BackgroundImages = WebConfigSet(CGImage)
+    cp_SavedSessions = WebConfigSet(CGSessionName)
+    cp_Filters = WebConfigSet(CGFilter)
+    savedSessions = WebConfigSet(CGSessionName)
     cp_DefaultSession = CGSession()
     cp_LastSavedSession = str()
     fileAccess = None
commit 8c9b05685ff32b309e3447f2030c86e6a1ab9293
Author: Maxime de Roucy <mderoucy at linagora.com>
Date:   Mon Mar 25 16:40:37 2013 +0100

    minor update in rtfdocumentimpl.cxx
    
    Change-Id: Ie32166edbc3efb603ccb5e98d8c2cac66ecc2f47
    Reviewed-on: https://gerrit.libreoffice.org/3083
    Reviewed-by: Miklos Vajna <vmiklos at suse.cz>
    Tested-by: Miklos Vajna <vmiklos at suse.cz>

diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index d057a67..27ca5de 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -839,6 +839,7 @@ int RTFDocumentImpl::resolvePict(bool bInline)
     }
     writerfilter::Reference<Properties>::Pointer_t const pProperties(new RTFReferenceProperties(aAttributes, aSprms));
     checkFirstRun();
+
     if (!m_aStates.top().pCurrentBuffer)
     {
         Mapper().props(pProperties);
@@ -850,6 +851,7 @@ int RTFDocumentImpl::resolvePict(bool bInline)
         RTFValue::Pointer_t pValue(new RTFValue(aAttributes, aSprms));
         m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue));
     }
+
     return 0;
 }
 
@@ -948,7 +950,9 @@ bool RTFFrame::inFrame()
 void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps)
 {
     sal_uInt8 sValue[] = { nValue };
-    if (!m_aStates.top().pCurrentBuffer)
+    RTFBuffer_t* pCurrentBuffer = m_aStates.top().pCurrentBuffer;
+
+    if (!pCurrentBuffer)
     {
         Mapper().startCharacterGroup();
         // Should we send run properties?
@@ -959,10 +963,10 @@ void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps)
     }
     else
     {
-        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t()));
+        pCurrentBuffer->push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t()));
         RTFValue::Pointer_t pValue(new RTFValue(*sValue));
-        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_TEXT, pValue));
-        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t()));
+        pCurrentBuffer->push_back(make_pair(BUFFER_TEXT, pValue));
+        pCurrentBuffer->push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t()));
     }
 }
 
@@ -1109,31 +1113,37 @@ void RTFDocumentImpl::text(OUString& rString)
         return;
     }
 
-    if (!m_aStates.top().pCurrentBuffer && m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE)
+    RTFBuffer_t* pCurrentBuffer = m_aStates.top().pCurrentBuffer;
+
+    if (!pCurrentBuffer && m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE)
         Mapper().startCharacterGroup();
-    else if (m_aStates.top().pCurrentBuffer)
+    else if (pCurrentBuffer)
     {
         RTFValue::Pointer_t pValue;
-        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_STARTRUN, pValue));
+        pCurrentBuffer->push_back(make_pair(BUFFER_STARTRUN, pValue));
     }
+
     if (m_aStates.top().nDestinationState == DESTINATION_NORMAL
             || m_aStates.top().nDestinationState == DESTINATION_FIELDRESULT
             || m_aStates.top().nDestinationState == DESTINATION_SHAPETEXT)
         runProps();
-    if (!m_aStates.top().pCurrentBuffer)
+
+    if (!pCurrentBuffer)
         Mapper().utext(reinterpret_cast<sal_uInt8 const*>(rString.getStr()), rString.getLength());
     else
     {
         RTFValue::Pointer_t pValue(new RTFValue(rString));
-        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_UTEXT, pValue));
+        pCurrentBuffer->push_back(make_pair(BUFFER_UTEXT, pValue));
     }
+
     m_bNeedCr = true;
-    if (!m_aStates.top().pCurrentBuffer && m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE)
+
+    if (!pCurrentBuffer && m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE)
         Mapper().endCharacterGroup();
-    else if(m_aStates.top().pCurrentBuffer)
+    else if(pCurrentBuffer)
     {
         RTFValue::Pointer_t pValue;
-        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_ENDRUN, pValue));
+        pCurrentBuffer->push_back(make_pair(BUFFER_ENDRUN, pValue));
     }
 }
 
@@ -2380,6 +2390,7 @@ int RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
             {
                 if (!m_aStates.top().pCurrentBuffer)
                     m_aStates.top().pCurrentBuffer = &m_aSuperBuffer;
+
                 RTFValue::Pointer_t pValue(new RTFValue("superscript"));
                 m_aStates.top().aCharacterSprms.set(NS_ooxml::LN_EG_RPrBase_vertAlign, pValue);
             }
@@ -2716,12 +2727,14 @@ int RTFDocumentImpl::dispatchValue(RTFKeyword nKeyword, int nParam)
         case RTF_POSY: nId = NS_ooxml::LN_CT_FramePr_y; m_aStates.top().aFrame.setSprm(NS_ooxml::LN_CT_FramePr_yAlign, 0); break;
         default: break;
     }
+
     if (nId > 0)
     {
         m_bNeedPap = true;
         // Don't try to support text frames inside tables for now.
         if (m_aStates.top().pCurrentBuffer != &m_aTableBuffer)
             m_aStates.top().aFrame.setSprm(nId, nParam);
+
         return 0;
     }
 
@@ -4285,6 +4298,7 @@ int RTFDocumentImpl::popState()
         else if (m_xDocumentProperties.is())
             m_xDocumentProperties->setTitle(aState.aDestinationText.makeStringAndClear());
     }
+
     if (aState.pCurrentBuffer == &m_aSuperBuffer)
     {
         OSL_ASSERT(m_aStates.top().pCurrentBuffer == 0);
@@ -4294,6 +4308,7 @@ int RTFDocumentImpl::popState()
 
         m_bHasFootnote = false;
     }
+
     if (m_aStates.size())
     {
         m_aStates.top().nCells = aState.nCells;
commit ea8602bd116198aa076903d9b6ad91cfa96d0464
Author: Maxime de Roucy <mderoucy at linagora.com>
Date:   Mon Mar 25 16:33:55 2013 +0100

    solve fdo#62805
    
    move m_pCurrentBuffer to RTFParserState
    
    Change-Id: Ied16ee1704d35c6bd0368b26a210131b60bc91a3
    Reviewed-on: https://gerrit.libreoffice.org/3082
    Reviewed-by: Miklos Vajna <vmiklos at suse.cz>
    Tested-by: Miklos Vajna <vmiklos at suse.cz>

diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 47d2af1..d057a67 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -255,7 +255,6 @@ RTFDocumentImpl::RTFDocumentImpl(uno::Reference<uno::XComponentContext> const& x
     m_aTableBuffer(),
     m_aSuperBuffer(),
     m_aShapetextBuffer(),
-    m_pCurrentBuffer(0),
     m_bHasFootnote(false),
     m_pSuperstream(0),
     m_nHeaderFooterPositions(),
@@ -438,7 +437,7 @@ void RTFDocumentImpl::checkNeedPap()
     if (m_bNeedPap)
     {
         m_bNeedPap = false; // reset early, so we can avoid recursion when calling ourselves
-        if (!m_pCurrentBuffer)
+        if (!m_aStates.top().pCurrentBuffer)
         {
             writerfilter::Reference<Properties>::Pointer_t const pParagraphProperties(
                     getProperties(m_aStates.top().aParagraphAttributes, m_aStates.top().aParagraphSprms)
@@ -466,14 +465,14 @@ void RTFDocumentImpl::checkNeedPap()
         else
         {
             RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aParagraphAttributes, m_aStates.top().aParagraphSprms));
-            m_pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue));
+            m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue));
         }
     }
 }
 
 void RTFDocumentImpl::runProps()
 {
-    if (!m_pCurrentBuffer)
+    if (!m_aStates.top().pCurrentBuffer)
     {
         writerfilter::Reference<Properties>::Pointer_t const pProperties = getProperties(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms);
         Mapper().props(pProperties);
@@ -481,7 +480,7 @@ void RTFDocumentImpl::runProps()
     else
     {
         RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aCharacterAttributes, m_aStates.top().aCharacterSprms));
-        m_pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue));
+        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue));
     }
 }
 
@@ -840,7 +839,7 @@ int RTFDocumentImpl::resolvePict(bool bInline)
     }
     writerfilter::Reference<Properties>::Pointer_t const pProperties(new RTFReferenceProperties(aAttributes, aSprms));
     checkFirstRun();
-    if (!m_pCurrentBuffer)
+    if (!m_aStates.top().pCurrentBuffer)
     {
         Mapper().props(pProperties);
         // Make sure we don't loose these properties with a too early reset.
@@ -849,7 +848,7 @@ int RTFDocumentImpl::resolvePict(bool bInline)
     else
     {
         RTFValue::Pointer_t pValue(new RTFValue(aAttributes, aSprms));
-        m_pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue));
+        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_PROPS, pValue));
     }
     return 0;
 }
@@ -949,7 +948,7 @@ bool RTFFrame::inFrame()
 void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps)
 {
     sal_uInt8 sValue[] = { nValue };
-    if (!m_pCurrentBuffer)
+    if (!m_aStates.top().pCurrentBuffer)
     {
         Mapper().startCharacterGroup();
         // Should we send run properties?
@@ -960,10 +959,10 @@ void RTFDocumentImpl::singleChar(sal_uInt8 nValue, bool bRunProps)
     }
     else
     {
-        m_pCurrentBuffer->push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t()));
+        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_STARTRUN, RTFValue::Pointer_t()));
         RTFValue::Pointer_t pValue(new RTFValue(*sValue));
-        m_pCurrentBuffer->push_back(make_pair(BUFFER_TEXT, pValue));
-        m_pCurrentBuffer->push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t()));
+        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_TEXT, pValue));
+        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_ENDRUN, RTFValue::Pointer_t()));
     }
 }
 
@@ -1110,31 +1109,31 @@ void RTFDocumentImpl::text(OUString& rString)
         return;
     }
 
-    if (!m_pCurrentBuffer && m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE)
+    if (!m_aStates.top().pCurrentBuffer && m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE)
         Mapper().startCharacterGroup();
-    else if (m_pCurrentBuffer)
+    else if (m_aStates.top().pCurrentBuffer)
     {
         RTFValue::Pointer_t pValue;
-        m_pCurrentBuffer->push_back(make_pair(BUFFER_STARTRUN, pValue));
+        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_STARTRUN, pValue));
     }
     if (m_aStates.top().nDestinationState == DESTINATION_NORMAL
             || m_aStates.top().nDestinationState == DESTINATION_FIELDRESULT
             || m_aStates.top().nDestinationState == DESTINATION_SHAPETEXT)
         runProps();
-    if (!m_pCurrentBuffer)
+    if (!m_aStates.top().pCurrentBuffer)
         Mapper().utext(reinterpret_cast<sal_uInt8 const*>(rString.getStr()), rString.getLength());
     else
     {
         RTFValue::Pointer_t pValue(new RTFValue(rString));
-        m_pCurrentBuffer->push_back(make_pair(BUFFER_UTEXT, pValue));
+        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_UTEXT, pValue));
     }
     m_bNeedCr = true;
-    if (!m_pCurrentBuffer && m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE)
+    if (!m_aStates.top().pCurrentBuffer && m_aStates.top().nDestinationState != DESTINATION_FOOTNOTE)
         Mapper().endCharacterGroup();
-    else if(m_pCurrentBuffer)
+    else if(m_aStates.top().pCurrentBuffer)
     {
         RTFValue::Pointer_t pValue;
-        m_pCurrentBuffer->push_back(make_pair(BUFFER_ENDRUN, pValue));
+        m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_ENDRUN, pValue));
     }
 }
 
@@ -1290,7 +1289,7 @@ int RTFDocumentImpl::dispatchDestination(RTFKeyword nKeyword)
             break;
         case RTF_SHPINST:
             // Don't try to support shapes inside tables for now.
-            if (m_pCurrentBuffer != &m_aTableBuffer)
+            if (m_aStates.top().pCurrentBuffer != &m_aTableBuffer)
                 m_aStates.top().nDestinationState = DESTINATION_SHAPEINSTRUCTION;
             else
                 m_aStates.top().nDestinationState = DESTINATION_SKIP;
@@ -1344,8 +1343,8 @@ int RTFDocumentImpl::dispatchDestination(RTFKeyword nKeyword)
                     nId = NS_rtf::LN_endnote;
 
                 m_bHasFootnote = true;
-                if (m_pCurrentBuffer == &m_aSuperBuffer)
-                    m_pCurrentBuffer = 0;
+                if (m_aStates.top().pCurrentBuffer == &m_aSuperBuffer)
+                    m_aStates.top().pCurrentBuffer = 0;
                 bool bCustomMark = false;
                 OUString aCustomMark;
                 while (m_aSuperBuffer.size())
@@ -1416,7 +1415,7 @@ int RTFDocumentImpl::dispatchDestination(RTFKeyword nKeyword)
             dispatchFlag(RTF_PARD);
             m_bNeedPap = true;
             OSL_ENSURE(!m_aShapetextBuffer.size(), "shapetext buffer is not empty");
-            m_pCurrentBuffer = &m_aShapetextBuffer;
+            m_aStates.top().pCurrentBuffer = &m_aShapetextBuffer;
             break;
         case RTF_FORMFIELD:
             if (m_aStates.top().nDestinationState == DESTINATION_FIELDINSTRUCTION)
@@ -1464,7 +1463,7 @@ int RTFDocumentImpl::dispatchDestination(RTFKeyword nKeyword)
                 m_aStates.top().nDestinationState = DESTINATION_OBJECT;
 
                 // check if the object is in a special container (e.g. a table)
-                if (!m_pCurrentBuffer)
+                if (!m_aStates.top().pCurrentBuffer)
                 {
                     // the object is in a table or another container.
                     // Don't try to treate it as an OLE object (fdo#53594).
@@ -1476,7 +1475,7 @@ int RTFDocumentImpl::dispatchDestination(RTFKeyword nKeyword)
             break;
         case RTF_OBJDATA:
             // check if the object is in a special container (e.g. a table)
-            if (m_pCurrentBuffer)
+            if (m_aStates.top().pCurrentBuffer)
             {
                 // the object is in a table or another container.
                 // Use the \result (RTF_RESULT) element of the object instead,
@@ -1696,7 +1695,7 @@ int RTFDocumentImpl::dispatchSymbol(RTFKeyword nKeyword)
                 checkNeedPap();
                 if (bNeedPap)
                     runProps();
-                if (!m_pCurrentBuffer)
+                if (!m_aStates.top().pCurrentBuffer)
                 {
                     parBreak();
                     // Not in table? Reset max width.
@@ -1705,7 +1704,7 @@ int RTFDocumentImpl::dispatchSymbol(RTFKeyword nKeyword)
                 else if (m_aStates.top().nDestinationState != DESTINATION_SHAPETEXT)
                 {
                     RTFValue::Pointer_t pValue;
-                    m_pCurrentBuffer->push_back(make_pair(BUFFER_PAR, pValue));
+                    m_aStates.top().pCurrentBuffer->push_back(make_pair(BUFFER_PAR, pValue));
                 }
                 // but don't emit properties yet, since they may change till the first text token arrives
                 m_bNeedPap = true;
@@ -2129,9 +2128,9 @@ int RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
     // Trivial paragraph flags
     switch (nKeyword)
     {
-        case RTF_KEEP: if (m_pCurrentBuffer != &m_aTableBuffer) nParam = NS_sprm::LN_PFKeep; break;
-        case RTF_KEEPN: if (m_pCurrentBuffer != &m_aTableBuffer) nParam = NS_sprm::LN_PFKeepFollow; break;
-        case RTF_INTBL: m_pCurrentBuffer = &m_aTableBuffer; nParam = NS_sprm::LN_PFInTable; break;
+        case RTF_KEEP: if (m_aStates.top().pCurrentBuffer != &m_aTableBuffer) nParam = NS_sprm::LN_PFKeep; break;
+        case RTF_KEEPN: if (m_aStates.top().pCurrentBuffer != &m_aTableBuffer) nParam = NS_sprm::LN_PFKeepFollow; break;
+        case RTF_INTBL: m_aStates.top().pCurrentBuffer = &m_aTableBuffer; nParam = NS_sprm::LN_PFInTable; break;
         case RTF_PAGEBB: nParam = NS_sprm::LN_PFPageBreakBefore; break;
         default: break;
     }
@@ -2177,7 +2176,7 @@ int RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
                 m_aStates.top().aParagraphSprms = m_aDefaultState.aParagraphSprms;
                 m_aStates.top().aParagraphAttributes = m_aDefaultState.aParagraphAttributes;
                 if (m_aStates.top().nDestinationState != DESTINATION_SHAPETEXT)
-                    m_pCurrentBuffer = 0;
+                    m_aStates.top().pCurrentBuffer = 0;
             }
             else
             {
@@ -2379,8 +2378,8 @@ int RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
             break;
         case RTF_SUPER:
             {
-                if (!m_pCurrentBuffer)
-                    m_pCurrentBuffer = &m_aSuperBuffer;
+                if (!m_aStates.top().pCurrentBuffer)
+                    m_aStates.top().pCurrentBuffer = &m_aSuperBuffer;
                 RTFValue::Pointer_t pValue(new RTFValue("superscript"));
                 m_aStates.top().aCharacterSprms.set(NS_ooxml::LN_EG_RPrBase_vertAlign, pValue);
             }
@@ -2392,10 +2391,10 @@ int RTFDocumentImpl::dispatchFlag(RTFKeyword nKeyword)
             }
             break;
         case RTF_NOSUPERSUB:
-            if (m_pCurrentBuffer == &m_aSuperBuffer)
+            if (m_aStates.top().pCurrentBuffer == &m_aSuperBuffer)
             {
                 replayBuffer(m_aSuperBuffer);
-                m_pCurrentBuffer = 0;
+                m_aStates.top().pCurrentBuffer = 0;
             }
             m_aStates.top().aCharacterSprms.erase(NS_ooxml::LN_EG_RPrBase_vertAlign);
             break;
@@ -2721,7 +2720,7 @@ int RTFDocumentImpl::dispatchValue(RTFKeyword nKeyword, int nParam)
     {
         m_bNeedPap = true;
         // Don't try to support text frames inside tables for now.
-        if (m_pCurrentBuffer != &m_aTableBuffer)
+        if (m_aStates.top().pCurrentBuffer != &m_aTableBuffer)
             m_aStates.top().aFrame.setSprm(nId, nParam);
         return 0;
     }
@@ -3762,9 +3761,6 @@ int RTFDocumentImpl::popState()
     case DESTINATION_PICT:
         resolvePict(true);
     break;
-    case DESTINATION_SHAPETEXT:
-        m_pCurrentBuffer = 0; // Just disable buffering, don't empty it yet.
-    break;
     case DESTINATION_FORMFIELDNAME:
     {
         RTFValue::Pointer_t pValue(new RTFValue(m_aStates.top().aDestinationText.makeStringAndClear()));
@@ -4289,11 +4285,13 @@ int RTFDocumentImpl::popState()
         else if (m_xDocumentProperties.is())
             m_xDocumentProperties->setTitle(aState.aDestinationText.makeStringAndClear());
     }
-    if (m_pCurrentBuffer == &m_aSuperBuffer)
+    if (aState.pCurrentBuffer == &m_aSuperBuffer)
     {
+        OSL_ASSERT(m_aStates.top().pCurrentBuffer == 0);
+
         if (!m_bHasFootnote)
             replayBuffer(m_aSuperBuffer);
-        m_pCurrentBuffer = 0;
+
         m_bHasFootnote = false;
     }
     if (m_aStates.size())
@@ -4406,7 +4404,8 @@ RTFParserState::RTFParserState(RTFDocumentImpl *pDocumentImpl)
     nDay(0),
     nHour(0),
     nMinute(0),
-    nCurrentStyleIndex(-1)
+    nCurrentStyleIndex(-1),
+    pCurrentBuffer(0)
 {
 }
 
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.hxx b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
index 5ced019..a96ad9a 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.hxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.hxx
@@ -407,6 +407,9 @@ namespace writerfilter {
 
                 /// Same as the int value of NS_rtf::LN_ISTD in aParagraphAttributes, for performance reasons.
                 int nCurrentStyleIndex;
+
+                /// Points to the active buffer, if there is one.
+                RTFBuffer_t* pCurrentBuffer;
         };
 
         class RTFTokenizer;
@@ -540,8 +543,6 @@ namespace writerfilter {
                 RTFBuffer_t m_aSuperBuffer;
                 /// Buffered shape text.
                 RTFBuffer_t m_aShapetextBuffer;
-                /// Points to the active buffer, if there is one.
-                RTFBuffer_t* m_pCurrentBuffer;
 
                 bool m_bHasFootnote;
                 /// Superstream of this substream.
commit cdf0f6cf2b157ee187a74b786813e1d3dff9fd2b
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 12:57:15 2013 +0100

    -Werror,-Wunused-macros
    
    Change-Id: I4df79952596b267a0e744a2b9a11a1e128624e74

diff --git a/extensions/source/update/check/updatecheckconfig.cxx b/extensions/source/update/check/updatecheckconfig.cxx
index f72b022..8f0de9a 100644
--- a/extensions/source/update/check/updatecheckconfig.cxx
+++ b/extensions/source/update/check/updatecheckconfig.cxx
@@ -46,7 +46,6 @@ namespace util = com::sun::star::util ;
 namespace uno = com::sun::star::uno ;
 
 #define LAST_CHECK              "LastCheck"
-#define VERSION_FOUND           "UpdateVersionFound"
 #define UPDATE_VERSION          "UpdateVersion"
 #define UPDATE_BUILDID          "UpdateBuildId"
 #define UPDATE_DESCRIPTION      "UpdateDescription"
commit 787bdc61ddf169c562002ecfe07025c1b8e8a2ef
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 12:55:05 2013 +0100

    -Werror=unused-macros
    
    Change-Id: I8548078dd6b9fc3555bfb5e23a683879ee3de3fa

diff --git a/comphelper/source/misc/accimplaccess.cxx b/comphelper/source/misc/accimplaccess.cxx
index f70fa54..32e4cec 100644
--- a/comphelper/source/misc/accimplaccess.cxx
+++ b/comphelper/source/misc/accimplaccess.cxx
@@ -30,9 +30,6 @@ namespace comphelper
 {
 //.........................................................................
 
-#define BITFIELDSIZE    ( sizeof( sal_Int64 ) * 8 )
-    // maximum number of bits we have in a sal_Int64
-
     using ::com::sun::star::uno::Reference;
     using ::com::sun::star::uno::Sequence;
     using ::com::sun::star::uno::Exception;
@@ -89,7 +86,7 @@ namespace comphelper
     //---------------------------------------------------------------------
     void OAccessibleImplementationAccess::setStateBit( const sal_Int16 _nState, const sal_Bool _bSet )
     {
-        OSL_ENSURE( _nState >= 0 && static_cast< sal_uInt16 >(_nState) < BITFIELDSIZE, "OAccessibleImplementationAccess::setStateBit: no more bits (shutting down the universe now)!" );
+        OSL_ENSURE( _nState >= 0 && static_cast< sal_uInt16 >(_nState) < sizeof( sal_Int64 ) * 8, "OAccessibleImplementationAccess::setStateBit: no more bits (shutting down the universe now)!" );
 
         sal_uInt64 nBitMask( 1 );
         nBitMask <<= _nState;
commit 6a6aa4b9249027a168db42ccff877e34e44d3872
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 12:50:44 2013 +0100

    Missing #include "sal/config.h"
    
    Change-Id: I5223b11089d038d5c3f6c086432a6b2a8fd119c8

diff --git a/sccomp/source/solver/solver.cxx b/sccomp/source/solver/solver.cxx
index a20b24b..7ff43b1 100644
--- a/sccomp/source/solver/solver.cxx
+++ b/sccomp/source/solver/solver.cxx
@@ -26,6 +26,8 @@
  *
  ************************************************************************/
 
+#include "sal/config.h"
+
 #undef LANGUAGE_NONE
 #if defined SAL_W32
 #define WINAPI __stdcall
commit 4560c49c1e87c6c08d18734fef8d1420e048ad0e
Author: Petr Mladek <pmladek at suse.cz>
Date:   Wed Mar 27 12:40:10 2013 +0100

    Bump android remote version to 1.0.6+, version code to 8
    
    Change-Id: Id8585bbc7f44ef59a27271119bdb1df701b9692f

diff --git a/android/sdremote/AndroidManifest.xml b/android/sdremote/AndroidManifest.xml
index d1d53df..d279fbb 100644
--- a/android/sdremote/AndroidManifest.xml
+++ b/android/sdremote/AndroidManifest.xml
@@ -1,8 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="org.libreoffice.impressremote"
-    android:versionCode="7"
-    android:versionName="1.0.5+ Impress Remote"
+    android:versionCode="8"
+    android:versionName="1.0.6+ Impress Remote"
     android:installLocation="auto" >
 
     <uses-permission android:name="android.permission.INTERNET" />
commit 644cf72f7c5bb217ea2c3769e5cfd958346e2c7f
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 13:31:09 2013 +0200

    WaE: macro is not used
    
    Change-Id: I51ffa344e414d549daf642ad961e489a83b2be37

diff --git a/sc/source/core/tool/callform.cxx b/sc/source/core/tool/callform.cxx
index d46409b..8fd8ea2 100644
--- a/sc/source/core/tool/callform.cxx
+++ b/sc/source/core/tool/callform.cxx
@@ -65,6 +65,7 @@ typedef void (CALLTYPE* FARPROC) ( void );
 
 }
 
+#ifndef DISABLE_DYNLOADING
 #define GETFUNCTIONCOUNT        "GetFunctionCount"
 #define GETFUNCTIONDATA         "GetFunctionData"
 #define SETLANGUAGE             "SetLanguage"
@@ -72,6 +73,7 @@ typedef void (CALLTYPE* FARPROC) ( void );
 #define ISASYNC                 "IsAsync"
 #define ADVICE                  "Advice"
 #define UNADVICE                "Unadvice"
+#endif
 
 class ModuleData
 {
commit 1c48417cf7f726e86bbb84a5403b56d925ce5610
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 13:29:01 2013 +0200

    Bypass FuncData::getParamDesc() too in the DISABLE_DYNLOADING case
    
    Change-Id: Ia115355af6e556fb848235691be68edd2462752d

diff --git a/sc/source/core/tool/callform.cxx b/sc/source/core/tool/callform.cxx
index 7117c71..d46409b 100644
--- a/sc/source/core/tool/callform.cxx
+++ b/sc/source/core/tool/callform.cxx
@@ -391,6 +391,12 @@ const OUString& FuncData::GetModuleName() const
 
 bool FuncData::getParamDesc( OUString& aName, OUString& aDesc, sal_uInt16 nParam ) const
 {
+#ifdef DISABLE_DYNLOADING
+    (void) aName;
+    (void) aDesc;
+    (void) nParam;
+    return false;
+#else
     bool bRet = false;
     if ( nParam <= nParamCount )
     {
@@ -414,6 +420,7 @@ bool FuncData::getParamDesc( OUString& aName, OUString& aDesc, sal_uInt16 nParam
         aDesc = OUString();
     }
     return bRet;
+#endif
 }
 
 FuncCollection::FuncCollection() {}
commit 0ac88c0bbc95465a08d14be0033a136a14c56557
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 13:06:39 2013 +0200

    WaE: macro is not used: USE_LIBPNG
    
    Change-Id: I900d4957d964332ef97cb389d17206438f94743c

diff --git a/desktop/unx/source/splashx.c b/desktop/unx/source/splashx.c
index 339218c..2f7d548 100644
--- a/desktop/unx/source/splashx.c
+++ b/desktop/unx/source/splashx.c
@@ -36,8 +36,6 @@
 #include <X11/extensions/Xinerama.h>
 #endif
 
-#define USE_LIBPNG
-
 #include "osl/endian.h"
 #include <fcntl.h>
 #include <stdint.h>
commit e717c5b929cdb790147c55c20889ed9042374394
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 12:06:09 2013 +0100

    -Werror,-Wunused-macros
    
    Change-Id: I083b936a6b20f070748c281d5814d5e57dedf864

diff --git a/extensions/source/update/check/updatecheck.cxx b/extensions/source/update/check/updatecheck.cxx
index cea6ec7..d2ac583 100644
--- a/extensions/source/update/check/updatecheck.cxx
+++ b/extensions/source/update/check/updatecheck.cxx
@@ -64,11 +64,8 @@ namespace uno = com::sun::star::uno ;
 
 #define PROPERTY_TITLE          "BubbleHeading"
 #define PROPERTY_TEXT           "BubbleText"
-#define PROPERTY_IMAGE          "BubbleImageURL"
 #define PROPERTY_SHOW_BUBBLE    "BubbleVisible"
 #define PROPERTY_CLICK_HDL      "MenuClickHDL"
-#define PROPERTY_DEFAULT_TITLE  "DefaultHeading"
-#define PROPERTY_DEFAULT_TEXT   "DefaultText"
 #define PROPERTY_SHOW_MENUICON  "MenuIconVisible"
 
 extern "C" bool SAL_CALL WNT_hasInternetConnection();
commit ab7ac5884c5a824999b58d2a800cae64cb8e359a
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 12:56:59 2013 +0200

    Use <config_features.h> instead of -DDISABLE_EXTENSIONS
    
    Change-Id: I4fe5cd27b77d44b9b33af0ae3c3754e3b85c2ca3

diff --git a/config_host.mk.in b/config_host.mk.in
index 8457cb3..83aad60 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -96,7 +96,6 @@ export DISABLE_CVE_TESTS=@DISABLE_CVE_TESTS@
 export DISABLE_DBCONNECTIVITY=@DISABLE_DBCONNECTIVITY@
 export DISABLE_DYNLOADING=@DISABLE_DYNLOADING@
 export DISABLE_EXPORT=@DISABLE_EXPORT@
-export DISABLE_EXTENSIONS=@DISABLE_EXTENSIONS@
 export DISABLE_LINKOO=@DISABLE_LINKOO@
 export DISABLE_NEON=@DISABLE_NEON@
 export DISABLE_PYTHON=@DISABLE_PYTHON@
diff --git a/config_host/config_features.h.in b/config_host/config_features.h.in
index 48ac1dc..1cc2476 100644
--- a/config_host/config_features.h.in
+++ b/config_host/config_features.h.in
@@ -21,6 +21,15 @@
 
 #define HAVE_FEATURE_DESKTOP 0
 
+/* EXTENSIONS - Whether we have any extension mechanism at all
+ *
+ * Primarily intended for non-desktop platforms where supporting
+ * extensions can be complicated, or even prohibited by the OS (as on
+ * iOS).
+ */
+
+#define HAVE_FEATURE_EXTENSIONS 0
+
 /* HELP - Whether we have the "normal" desktop-style help mechanism
  *
  * Can be turned on/off also for desktop environments with
diff --git a/configure.ac b/configure.ac
index 6647b05..970ae68 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2157,13 +2157,10 @@ if test -z "$enable_extensions"; then
     fi
 fi
 
-DISABLE_EXTENSIONS=''
 if test "$enable_extensions" = yes; then
     BUILD_TYPE="$BUILD_TYPE EXTENSIONS"
-else
-    DISABLE_EXTENSIONS='TRUE'
+    AC_DEFINE(HAVE_FEATURE_EXTENSIONS)
 fi
-AC_SUBST(DISABLE_EXTENSIONS)
 
 if test -z "$enable_scripting"; then
     # Disable scripting for iOS unless specifically overridden
@@ -2659,7 +2656,7 @@ AC_SUBST(MACOSX_BUNDLE_IDENTIFIER)
 AC_MSG_CHECKING([whether to treat the installation as read-only])
 
 if test \( -z "$enable_readonly_installset" -a "$ENABLE_MACOSX_SANDBOX" = YES \) -o \
-        "$DISABLE_EXTENSIONS" = TRUE; then
+        "$enable_extensions" != yes; then
     enable_readonly_installset=yes
 fi
 if test "$enable_readonly_installset" = yes; then
diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx
index 1f57c2e..e9301bf 100644
--- a/desktop/source/app/app.cxx
+++ b/desktop/source/app/app.cxx
@@ -1541,7 +1541,7 @@ int Desktop::Main()
         */
         Application::GetDefaultDevice();
 
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
         // Check if bundled or shared extensions were added /removed
         // and process those extensions (has to be done before checking
         // the extension dependencies!
diff --git a/desktop/source/deployment/manager/dp_activepackages.cxx b/desktop/source/deployment/manager/dp_activepackages.cxx
index 1a4081f..1eaeb09 100644
--- a/desktop/source/deployment/manager/dp_activepackages.cxx
+++ b/desktop/source/deployment/manager/dp_activepackages.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
 
 #include "sal/config.h"
 
@@ -43,7 +44,7 @@
 //   key: 0xFF UTF8(identifier)
 //   value: UTF8(tempname) 0xFF UTF8(filename) 0xFF UTF8(mediatype)
 
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
 
 namespace {
 
@@ -117,7 +118,7 @@ namespace dp_manager {
 ActivePackages::ActivePackages() {}
 
 ActivePackages::ActivePackages(::rtl::OUString const & url, bool readOnly)
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
     : m_map(url, readOnly)
 #endif
 {
@@ -137,7 +138,7 @@ bool ActivePackages::get(
     Data * data, ::rtl::OUString const & id, ::rtl::OUString const & fileName)
     const
 {
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
     ::rtl::OString v;
     if (m_map.get(&v, newKey(id))) {
         if (data != NULL) {
@@ -162,7 +163,7 @@ bool ActivePackages::get(
 
 ActivePackages::Entries ActivePackages::getEntries() const {
     Entries es;
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
     ::dp_misc::t_string2string_map m(m_map.getEntries());
     for (::dp_misc::t_string2string_map::const_iterator i(m.begin());
          i != m.end(); ++i)
@@ -188,7 +189,7 @@ ActivePackages::Entries ActivePackages::getEntries() const {
 }
 
 void ActivePackages::put(::rtl::OUString const & id, Data const & data) {
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
     ::rtl::OStringBuffer b;
     b.append(
         ::rtl::OUStringToOString(data.temporaryName, RTL_TEXTENCODING_UTF8));
@@ -210,7 +211,7 @@ void ActivePackages::put(::rtl::OUString const & id, Data const & data) {
 void ActivePackages::erase(
     ::rtl::OUString const & id, ::rtl::OUString const & fileName)
 {
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
     m_map.erase(newKey(id), true) || m_map.erase(oldKey(fileName), true);
 #else
     (void) id;
diff --git a/desktop/source/deployment/manager/dp_activepackages.hxx b/desktop/source/deployment/manager/dp_activepackages.hxx
index fa2d909..940b6aa 100644
--- a/desktop/source/deployment/manager/dp_activepackages.hxx
+++ b/desktop/source/deployment/manager/dp_activepackages.hxx
@@ -20,12 +20,14 @@
 #ifndef INCLUDED_DESKTOP_SOURCE_DEPLOYMENT_MANAGER_DP_ACTIVEPACKAGES_HXX
 #define INCLUDED_DESKTOP_SOURCE_DEPLOYMENT_MANAGER_DP_ACTIVEPACKAGES_HXX
 
+#include <config_features.h>
+
 #include "sal/config.h"
 
 #include <utility>
 #include <vector>
 
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
 #include "dp_persmap.h"
 #endif
 
@@ -84,7 +86,7 @@ public:
 private:
     ActivePackages(ActivePackages &); // not defined
     void operator =(ActivePackages &); // not defined
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
     ::dp_misc::PersistentMap m_map;
 #endif
 };
diff --git a/desktop/source/deployment/registry/configuration/dp_configuration.cxx b/desktop/source/deployment/registry/configuration/dp_configuration.cxx
index 7c5b5d0..b17f057 100644
--- a/desktop/source/deployment/registry/configuration/dp_configuration.cxx
+++ b/desktop/source/deployment/registry/configuration/dp_configuration.cxx
@@ -17,13 +17,14 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-
 //TODO: Large parts of this file were copied from dp_component.cxx; those parts
 // should be consolidated.
 
+#include <config_features.h>
+
 #include "dp_configuration.hrc"
 #include "dp_backend.h"
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
 #include "dp_persmap.h"
 #endif
 #include "dp_ucb.h"
@@ -111,7 +112,7 @@ class BackendImpl : public ::dp_registry::backend::PackageRegistryBackend
         OUString const & identifier,
         Reference<XCommandEnvironment> const & xCmdEnv );
 
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
     // for backwards compatibility - nil if no (compatible) back-compat db present
     ::std::auto_ptr<PersistentMap> m_registeredPackages;
 #endif
@@ -217,7 +218,7 @@ BackendImpl::BackendImpl(
 
         configmgrini_verify_init( xCmdEnv );
 
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
         SAL_WNODEPRECATED_DECLARATIONS_PUSH
         ::std::auto_ptr<PersistentMap> pMap;
         SAL_WNODEPRECATED_DECLARATIONS_POP
@@ -554,7 +555,7 @@ BackendImpl::PackageImpl::isRegistered_(
     if (that->hasActiveEntry(getURL()))
         bReg = true;
 
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
     if (!bReg && that->m_registeredPackages.get())
     {
         // fallback for user extension registered in berkeley DB
@@ -743,7 +744,7 @@ void BackendImpl::PackageImpl::processPackage_(
     }
     else // revoke
     {
-#ifndef DISABLE_EXTENSIONS
+#if HAVE_FEATURE_EXTENSIONS
         if (!that->removeFromConfigmgrIni(m_isSchema, url, xCmdEnv) &&
             that->m_registeredPackages.get()) {
             // Obsolete package database handling - should be removed for LibreOffice 4.0
diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk
index 5a4161e..3cc234e 100644
--- a/solenv/gbuild/gbuild.mk
+++ b/solenv/gbuild/gbuild.mk
@@ -271,7 +271,6 @@ gb_GLOBALDEFS += \
 		DISABLE_DBCONNECTIVITY \
 		DISABLE_DYNLOADING \
 		DISABLE_EXPORT \
-		DISABLE_EXTENSIONS \
 		DISABLE_SCRIPTING \
 		ENABLE_MACOSX_SANDBOX \
 		ENABLE_READONLY_INSTALLSET \
commit 71907bb06ae6fc3c0ea1485b6ed0efaed196a57a
Author: Thomas Arnhold <thomas at arnhold.org>
Date:   Wed Mar 27 11:49:40 2013 +0100

    -Wunused-macros
    
    Change-Id: Ia147a72a4bbd5cec45a2a74b721a81ff8c4340c2

diff --git a/desktop/unx/source/splashx.c b/desktop/unx/source/splashx.c
index 2a5f654..339218c 100644
--- a/desktop/unx/source/splashx.c
+++ b/desktop/unx/source/splashx.c
@@ -99,18 +99,6 @@ struct splash
 #define PROGRESS_YOFFSET 18
 #define PROGRESS_BARSPACE 2
 
-#define UINT8( x )      ( (unsigned int)( ( (uint8_t *)( x ) )[0] ) )
-
-#define UINT16( x ) (   ( (unsigned int)( ( (uint8_t *)( x ) )[0] ) ) + \
-                      ( ( (unsigned int)( ( (uint8_t *)( x ) )[1] ) ) << 8 ) )
-
-#define UINT32( x ) (   ( (unsigned int)( ( (uint8_t *)( x ) )[0] ) ) + \
-                      ( ( (unsigned int)( ( (uint8_t *)( x ) )[1] ) ) << 8  ) + \
-                      ( ( (unsigned int)( ( (uint8_t *)( x ) )[2] ) ) << 16 ) + \
-                      ( ( (unsigned int)( ( (uint8_t *)( x ) )[3] ) ) << 24 ) )
-
-#define MAX( x, y ) ( ( (x) > (y) )? (x): (y) )
-
 /* libpng-1.2.41 */
 #ifndef PNG_TRANSFORM_GRAY_TO_RGB
 #  define PNG_TRANSFORM_GRAY_TO_RGB   0x2000
commit 6e9be7c8a3c2145d923612889f209fe4874139c3
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 12:47:31 2013 +0200

    WaE: macro "_STRING_H" is not used
    
    Change-Id: Iabc3ab2d455a768f7af159490e0c26b694c01f34

diff --git a/svx/source/svdraw/svdpage.cxx b/svx/source/svdraw/svdpage.cxx
index 50e4e3b..3d181c2 100644
--- a/svx/source/svdraw/svdpage.cxx
+++ b/svx/source/svdraw/svdpage.cxx
@@ -26,9 +26,6 @@
 #include <sot/clsids.hxx>
 #include <svx/svdview.hxx>
 #include <string.h>
-#ifndef _STRING_H
-#define _STRING_H
-#endif
 #include <vcl/svapp.hxx>
 
 #include <tools/diagnose_ex.h>
commit 6c8cdfe24380461c3eb81cac39ac6425cad17715
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 12:45:25 2013 +0200

    WaE: macro is not used: STACKTYPE
    
    Change-Id: If20c7637d13f37029e447e779586fcfad21c3305

diff --git a/sal/osl/unx/signal.c b/sal/osl/unx/signal.c
index 24c170a..4ce8fd5 100644
--- a/sal/osl/unx/signal.c
+++ b/sal/osl/unx/signal.c
@@ -26,7 +26,9 @@
 #if defined( INTEL )
 #include "backtrace.h"
 #define INCLUDE_BACKTRACE
+#ifdef SAL_ENABLE_CRASH_REPORT
 #define STACKTYPE "MacOsX_X86"
+#endif
 #endif /* INTEL */
 
 #endif /* MACOSX */
commit b2d2118f76b8bc95dc2aae76b7c3f7a697b0da24
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 11:40:26 2013 +0100

    -Werror,-Wunused-macros
    
    Change-Id: I3c43fcfe7216a833f1dbe298098b72de52f0f155

diff --git a/solenv/bin/concat-deps.c b/solenv/bin/concat-deps.c
index 5d44f1f..765bacd 100644
--- a/solenv/bin/concat-deps.c
+++ b/solenv/bin/concat-deps.c
@@ -14,26 +14,26 @@
 
 #ifdef __APPLE__
 #ifdef __x86_64__
-#define CORE_BIG_ENDIAN 0
-#define CORE_LITTLE_ENDIAN 1
+#undef CORE_BIG_ENDIAN
+#define CORE_LITTLE_ENDIAN
 #define USE_MEMORY_ALIGNMENT 64 /* big value -> no alignment */
 #else
-#define CORE_BIG_ENDIAN 1
-#define CORE_LITTLE_ENDIAN 0
+#define CORE_BIG_ENDIAN
+#undef CORE_LITTLE_ENDIAN
 #define USE_MEMORY_ALIGNMENT 4
 #endif
 
 #endif
 #ifdef _AIX
-#define CORE_BIG_ENDIAN 1
-#define CORE_LITTLE_ENDIAN 0
+#define CORE_BIG_ENDIAN
+#undef CORE_LITTLE_ENDIAN
 #define USE_MEMORY_ALIGNMENT 4
 #endif /* Def _AIX */
 
 #ifdef _MSC_VER
 #define __windows
-#define CORE_BIG_ENDIAN 0
-#define CORE_LITTLE_ENDIAN 1
+#undef CORE_BIG_ENDIAN
+#define CORE_LITTLE_ENDIAN
 #define USE_MEMORY_ALIGNMENT 64 /* big value -> no alignment */
 #endif /* Def _MSC_VER */
 
@@ -42,8 +42,8 @@
     defined(__DragonFly__) || defined(__FreeBSD_kernel__)
 #include <sys/param.h>
 #if __BYTE_ORDER == __LITTLE_ENDIAN
-#define CORE_BIG_ENDIAN 0
-#define CORE_LITTLE_ENDIAN 1
+#undef CORE_BIG_ENDIAN
+#define CORE_LITTLE_ENDIAN
 #if defined(__x86_64) || defined(__i386)
 #define USE_MEMORY_ALIGNMENT 64
 #else
@@ -51,8 +51,8 @@
 #endif
 #else /* !(__BYTE_ORDER == __LITTLE_ENDIAN) */
 #if __BYTE_ORDER == __BIG_ENDIAN
-#define CORE_BIG_ENDIAN 1
-#define CORE_LITTLE_ENDIAN 0
+#define CORE_BIG_ENDIAN
+#undef CORE_LITTLE_ENDIAN
 #define USE_MEMORY_ALIGNMENT 4
 #endif /* __BYTE_ORDER == __BIG_ENDIAN */
 #endif /* !(__BYTE_ORDER == __LITTLE_ENDIAN) */
@@ -60,12 +60,12 @@
 
 #ifdef __sun
 #ifdef __sparc
-#define CORE_BIG_ENDIAN 1
-#define CORE_LITTLE_ENDIAN 0
+#define CORE_BIG_ENDIAN
+#undef CORE_LITTLE_ENDIAN
 #define USE_MEMORY_ALIGNMENT 4
 #else  /* Ndef __sparc */
-#define CORE_BIG_ENDIAN 0
-#define CORE_LITTLE_ENDIAN 1
+#undef CORE_BIG_ENDIAN
+#define CORE_LITTLE_ENDIAN
 #define USE_MEMORY_ALIGNMENT 4
 #endif /* Ndef __sparc */
 #endif /* Def __sun */
@@ -342,19 +342,17 @@ struct hash
 #define rot(x,k) (((x)<<(k)) | ((x)>>(32-(k))))
 
 
-#if CORE_BIG_ENDIAN
+#if defined CORE_BIG_ENDIAN
 #define MASK_C1 0xFFFFFF00
 #define MASK_C2 0xFFFF0000
 #define MASK_C3 0xFF000000
-#else
-#if CORE_LITTLE_ENDIAN
+#elif defined CORE_LITTLE_ENDIAN
 #define MASK_C1 0xFFFFFF
 #define MASK_C2 0xFFFF
 #define MASK_C3 0xFF
 #else
 #error "Missing Endianness definition"
 #endif
-#endif
 
 
 #define mix(a,b,c) \
commit c1ea7a2fb43a8f51134fafba78b3acc68f10fcf4
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 11:35:40 2013 +0100

    At least Mac OS X SDK 10.7 doesn't experience TimeValue clash here
    
    (causes -Werror,-Wunused-macros, rather)
    
    Change-Id: I1dc05a5cf73aec7827df662342f5d9189215e64e

diff --git a/sal/osl/unx/file.cxx b/sal/osl/unx/file.cxx
index c6f55dc..bffca6d 100644
--- a/sal/osl/unx/file.cxx
+++ b/sal/osl/unx/file.cxx
@@ -43,9 +43,13 @@
 #define HAVE_O_EXLOCK
 
 // add MACOSX Time Value
+#if MACOSX_SDK_VERSION < 1070
 #define TimeValue CFTimeValue
+#endif
 #include <CoreFoundation/CoreFoundation.h>
+#if MACOSX_SDK_VERSION < 1070
 #undef TimeValue
+#endif
 
 #endif /* MACOSX */
 
commit 5a88a8193a9ff81237c202e647d1c19eb827c0d0
Author: Fridrich Å trba <fridrich.strba at bluewin.ch>
Date:   Wed Mar 27 11:43:01 2013 +0100

    HanMac J import is really really initial :)
    
    Change-Id: I86e450326e5a0ae5499ec2f4ebdc5bcb9ca68390

diff --git a/filter/Configuration_filter.mk b/filter/Configuration_filter.mk
index 192a68f..f590c0d 100644
--- a/filter/Configuration_filter.mk
+++ b/filter/Configuration_filter.mk
@@ -327,7 +327,6 @@ $(call filter_Configuration_add_types,fcfg_langpack,fcfg_writer_types.xcu,filter
 	writer_DocMaker \
 	writer_eDoc_Document \
 	writer_FullWrite_Professional \
-	writer_HanMac_Word_J \
 	writer_HanMac_Word_K \
 	writer_LightWayText \
 	writer_Mac_Word \
diff --git a/writerperfect/source/writer/MWAWImportFilter.cxx b/writerperfect/source/writer/MWAWImportFilter.cxx
index 828d468..b00accde 100644
--- a/writerperfect/source/writer/MWAWImportFilter.cxx
+++ b/writerperfect/source/writer/MWAWImportFilter.cxx
@@ -941,7 +941,7 @@ throw( com::sun::star::uno::RuntimeException )
                 sTypeName = "writer_HanMac_Word_K";
                 break;
             case MWAWDocument::HMACJ: // HanMac Word-J ( almost nothing done for J document)
-                sTypeName = "writer_HanMac_Word_J";
+                // sTypeName = "writer_HanMac_Word_J";
                 break;
             case MWAWDocument::LWTEXT: // LightWayText ( only v4.5 Mac format )
                 sTypeName = "writer_LightWayText";
commit f8e1b64c52c26f6026fd13bcbef8e515dcef2015
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 12:41:41 2013 +0200

    WaE: macro is not used: _MATH_H weirdness
    
    Change-Id: I283767ba44012a740d49f1b8d9d1f6bf80d8b664

diff --git a/svx/source/svdraw/svddrgmt.cxx b/svx/source/svdraw/svddrgmt.cxx
index b618ac1..3dad382 100644
--- a/svx/source/svdraw/svddrgmt.cxx
+++ b/svx/source/svdraw/svddrgmt.cxx
@@ -20,9 +20,6 @@
 #include "svddrgm1.hxx"
 #include <math.h>
 
-#ifndef _MATH_H
-#define _MATH_H
-#endif
 #include <tools/bigint.hxx>
 #include <vcl/svapp.hxx>
 
diff --git a/svx/source/svdraw/svdedtv1.cxx b/svx/source/svdraw/svdedtv1.cxx
index d843567..7e316f7 100644
--- a/svx/source/svdraw/svdedtv1.cxx
+++ b/svx/source/svdraw/svdedtv1.cxx
@@ -21,9 +21,6 @@
 #include <svx/svdedtv.hxx>
 #include <math.h>
 
-#ifndef _MATH_H
-#define _MATH_H
-#endif
 #include <tools/bigint.hxx>
 #include <svl/itemiter.hxx>
 #include <vcl/msgbox.hxx>
commit c0518f245c02fd9d1d48f56429ebf59ac776c4c6
Author: Muthu Subramanian <sumuthu at suse.com>
Date:   Wed Mar 27 16:20:42 2013 +0530

    n#734735: [PPTX] Use number format, if available, for charts.

diff --git a/oox/source/drawingml/chart/seriesconverter.cxx b/oox/source/drawingml/chart/seriesconverter.cxx
index 3cc38d0..9ef1f3f 100644
--- a/oox/source/drawingml/chart/seriesconverter.cxx
+++ b/oox/source/drawingml/chart/seriesconverter.cxx
@@ -235,6 +235,9 @@ void DataLabelsConverter::convertFromModel( const Reference< XDataSeries >& rxDa
     for( DataLabelsModel::DataLabelVector::iterator aIt = mrModel.maPointLabels.begin(), aEnd = mrModel.maPointLabels.end(); aIt != aEnd; ++aIt )
     {
         (*aIt)->maNumberFormat.maFormatCode = mrModel.maNumberFormat.maFormatCode;
+        if( !mrModel.maNumberFormat.maFormatCode.isEmpty() )
+            (*aIt)->maNumberFormat.mbSourceLinked = false;
+
         DataLabelConverter aLabelConv( *this, **aIt );
         aLabelConv.convertFromModel( rxDataSeries, rTypeGroup );
     }
commit b8e68951d56cfd01cf63c3ee04b49a862b685bc5
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 11:31:12 2013 +0100

    -Werror=unused-macros (Android)
    
    Change-Id: Ibd06e49e78a6d6a69521a65b53b056e85b64765b

diff --git a/sal/osl/unx/signal.c b/sal/osl/unx/signal.c
index e80a4eb..24c170a 100644
--- a/sal/osl/unx/signal.c
+++ b/sal/osl/unx/signal.c
@@ -21,8 +21,6 @@
 /* system headers */
 #include "system.h"
 
-#define MAX_STACK_FRAMES 256
-
 #if defined( MACOSX )
 
 #if defined( INTEL )
@@ -55,6 +53,10 @@
 
 #endif /* defined SOLARIS */
 
+#if defined INCLUDE_BACKTRACE
+#define MAX_STACK_FRAMES 256
+#endif
+
 #include <osl/diagnose.h>
 #include <osl/mutex.h>
 #include <osl/signal.h>
@@ -409,8 +411,6 @@ static int fputs_xml( const char *string, FILE *stream )
 
 /* Create intermediate files and run crash reporter */
 
-#define REPORTENV_PARAM     "-crashreportenv:"
-
 #if defined SAL_ENABLE_CRASH_REPORT && defined INCLUDE_BACKTRACE && \
     defined LINUX
 
@@ -496,6 +496,9 @@ dynamic_section_offset(const char *name)
 static int ReportCrash( int Signal )
 {
 #ifdef SAL_ENABLE_CRASH_REPORT
+
+#define REPORTENV_PARAM     "-crashreportenv:"
+
     static sal_Bool bCrashReporterExecuted = sal_False;
     sal_Bool        bAutoCrashReport = sal_False;
 
commit a429142bfb282f7bd8166d4e91052cb5009608bd
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 12:19:16 2013 +0200

    WaE: macro "RUNNING_ON_VALGRIND" is not used
    
    Change-Id: Ie60882c86008506a331087a241f15e931c5eacee

diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx
index 9ac4503..27b704d 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx
@@ -57,13 +57,13 @@
 
 #ifdef ANDROID
 #include <osl/detail/android-bootstrap.h>
-#endif
-
+#else
 #if defined HAVE_VALGRIND_HEADERS
 #include <valgrind/valgrind.h>
 #else
 #define RUNNING_ON_VALGRIND 0
 #endif
+#endif
 
 #define SUN_MICRO "Sun Microsystems Inc."
 
commit f241e2b0c70dbbbe682cd719e135f5c54b924183
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 12:15:54 2013 +0200

    WaE: macro is not used
    
    Change-Id: I5feb344a98465e5bd85e233cb4bb4b34c93344dd

diff --git a/sfx2/source/appl/shutdownicon.cxx b/sfx2/source/appl/shutdownicon.cxx
index c6df67a..59af38e 100644
--- a/sfx2/source/appl/shutdownicon.cxx
+++ b/sfx2/source/appl/shutdownicon.cxx
@@ -115,9 +115,6 @@ extern "C" {
 }
 #endif
 
-#define DOSTRING( x )                       #x
-#define STRING( x )                         DOSTRING( x )
-
 bool ShutdownIcon::LoadModule( osl::Module **pModule,
                                oslGenericFunction *pInit,
                                oslGenericFunction *pDeInit )
@@ -147,6 +144,10 @@ bool ShutdownIcon::LoadModule( osl::Module **pModule,
 
     oslGenericFunction pTmpInit = NULL;
     oslGenericFunction pTmpDeInit = NULL;
+
+#define DOSTRING( x )                       #x
+#define STRING( x )                         DOSTRING( x )
+
     if ( pPlugin->loadRelative( &thisModule, OUString (STRING( PLUGIN_NAME  ) ) ) )
     {
         pTmpInit = pPlugin->getFunctionSymbol(
commit a21266f2233dc2cc6a69eed4afc0baf77c74e52f
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 11:07:58 2013 +0100

    Use explicit "SHELL=/usr/bin/env bash" in Makefile.in after all
    
    ...instead of "SHELL=@BASH@" from d3f7d05d1b9bb29e168c49bda1e1a28734567993
    "Clean up OOO_SHELL" which could expand to SHELL=/bin/sh which, at least on
    Mac OS X 10.7 with /usr/bin/make 3.81, could apparently lead to recipe lines
    calling ooinstall being directly exec'ed from make and failing to find ooinstall
    in solenv/bin, instead of going via the shell and taking into account PATH from
    included config_host.mk.
    
    Change-Id: I841dc30f72d1d8841c64f48408a669eb6a37a1f3

diff --git a/Makefile.in b/Makefile.in
index 79740bb..626c726 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -13,7 +13,7 @@ ifeq ($(MAKECMDGOALS),)
 MAKECMDGOALS:=all
 endif
 
-SHELL=@BASH@
+SHELL=/usr/bin/env bash
 SRCDIR := @SRC_ROOT@
 BUILDDIR := @BUILDDIR@
 
commit 00e9accbc591791b6529105807a2944cd92dde78
Author: Petr Kraus <petr_kraus at email.cz>
Date:   Tue Mar 26 18:16:44 2013 +0100

    fdo#42781 WaE: unreachable code
    
    Encapsulate whole switch case code by #if
    so it does not produce unreachable code when TRUE
    Also found second occurence in function overload.
    
    Change-Id: I2f726b4e9cad56850ce360e48f96f45137befe96
    Reviewed-on: https://gerrit.libreoffice.org/3066
    Reviewed-by: Christoph Brill <egore911 at gmail.com>
    Reviewed-by: Tomáš Chvátal <tchvatal at suse.cz>
    Tested-by: Tomáš Chvátal <tchvatal at suse.cz>

diff --git a/sc/source/core/tool/interpr4.cxx b/sc/source/core/tool/interpr4.cxx
index bfd9494..a3d77ff 100644
--- a/sc/source/core/tool/interpr4.cxx
+++ b/sc/source/core/tool/interpr4.cxx
@@ -543,10 +543,10 @@ double ScInterpreter::GetCellValueOrZero( const ScAddress& rPos, const ScBaseCel
         break;
 #if OSL_DEBUG_LEVEL > 0
         case CELLTYPE_DESTROYED:
-#endif
             SetError(errCellNoValue);
             fValue = 0.0;
         break;
+#endif
     }
 
     return fValue;
@@ -610,10 +610,10 @@ double ScInterpreter::GetCellValueOrZero( ScCellIterator& rIter )
         break;
 #if OSL_DEBUG_LEVEL > 0
         case CELLTYPE_DESTROYED:
-#endif
             SetError(errCellNoValue);
             fValue = 0.0;
         break;
+#endif
     }
 
     return fValue;
commit 3c2010e77ef70a99e4861192b0cb34de1f6ce61e
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 11:06:28 2013 +0100

    -Werror=unused-macros (Android)
    
    Change-Id: I7b88ff1a8c53fbb875d5cb84060c726fd7d06c9c

diff --git a/sal/osl/all/log.cxx b/sal/osl/all/log.cxx
index ad81c83..6106ac3 100644
--- a/sal/osl/all/log.cxx
+++ b/sal/osl/all/log.cxx
@@ -51,7 +51,7 @@
 #if defined WNT
 #include <process.h>
 #define OSL_DETAIL_GETPID _getpid()
-#else
+#elif !defined ANDROID
 #include <unistd.h>
 #define OSL_DETAIL_GETPID getpid()
 #endif
commit 7f52bb5ed454c06978220ac0d0631348360b644d
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Wed Mar 27 11:05:01 2013 +0100

    Hopefully _BSD_SOURCE not needed anywhere for MAP_ANON
    
    (-Werror=unused-macros on Android)
    
    Change-Id: I393face32e7d4782b5c8037fa8ebeb21ec3c6e7a

diff --git a/sal/rtl/alloc_arena.cxx b/sal/rtl/alloc_arena.cxx
index b3f2a7f..d35ba1f 100644
--- a/sal/rtl/alloc_arena.cxx
+++ b/sal/rtl/alloc_arena.cxx
@@ -17,7 +17,6 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#define _BSD_SOURCE 1 /* sys/mman.h: MAP_ANON */
 #include "alloc_arena.hxx"
 
 #include "alloc_impl.hxx"
commit b4845db4260db70cb3aaf03758cb4a1ca5fa88ed
Author: Miklos Vajna <vmiklos at suse.cz>
Date:   Wed Mar 27 10:58:53 2013 +0100

    fdo#30983 RTF filter: fix handling of RTF_PVPG and RTF_PHPG
    
    There were two issues here:
    
    1) The export filter never exported these keywords.
    
    2) The "flymaincnt" RTF extension we inherited from OOo actually never
    worked (i.e. it's like this since 7b0b5cdf, the initial import...), as
    RTFVertOrient / RTFHoriOrient's second parameter was stored in 1 bit, so
    text::RelOrientation::PAGE_FRAME (7) was read back as 1 instead.
    
    Note that I want to get rid of this flymaincnt extension in the exporter
    anyway soon, so killing the RTFVertOrient / RTFHoriOrient duplication is
    pointless: the sw version will go away.
    
    Change-Id: I5335567833ecf87e6b0ba7c73150a7b95c57f237

diff --git a/sw/qa/extras/rtfexport/data/fdo30983.rtf b/sw/qa/extras/rtfexport/data/fdo30983.rtf
new file mode 100644
index 0000000..bd4dd96
--- /dev/null
+++ b/sw/qa/extras/rtfexport/data/fdo30983.rtf
@@ -0,0 +1,43 @@
+{\rtf1\ansi\deff4\adeflang1025
+\paperh15840\paperw12240\margl902\margr958\margt1440\margb735\sectd\sbknone\sectunlocked1\pgndec\pgwsxn12240\pghsxn15840\marglsxn902\margrsxn958\margtsxn1440\margbsxn735\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc
+\absw2380\absh-1244\pvpg\posy465\phpg\posx8437
+{\*\flymaincnt96\flyvert29040\flyhorz30464\flyanchor4\pgndec}
+\s111\sl200\slmult0\ql\widctlpar
+{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}
+\aspalpha\ltrpar\cf0\dbch\af6\langfe255\dbch\af6\afs20\alang1025\loch\f6\fs16\lang1033
+{\dbch\af5\loch\f1\rtlch \ltrch\loch\loch\f5
+5983 Red Pine Blvd}
+\par \s111\sl200\slmult0\ql\widctlpar
+{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}
+\aspalpha\ltrpar\cf0\dbch\af6\langfe255\dbch\af6\afs20\alang1025\loch\f6\fs16\lang1033
+{\dbch\af5\rtlch \ltrch\loch\loch\f5
+White Bear Township, MN 55110}
+\par \s110\sl200\slmult0\ql\widctlpar
+{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}
+\aspalpha\ltrpar\cf0\dbch\af6\langfe255\dbch\af6\afs20\alang1025\loch\f6\fs16\lang1033
+{\dbch\af5\rtlch \ltrch\loch\loch\f5
+Home 651-426-9645}
+\par \s110\sl200\slmult0\ql\widctlpar
+{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}
+\aspalpha\ltrpar\cf0\dbch\af6\langfe255\dbch\af6\afs20\alang1025\loch\f6\fs16\lang1033
+{\dbch\af5\rtlch \ltrch\loch\loch\f5
+Cell 651-245-1843}
+\par \s110\sl200\slmult0\ql\widctlpar
+{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}
+\aspalpha\ltrpar\cf0\dbch\af6\langfe255\dbch\af6\afs20\alang1025\loch\f6\fs16\lang1033
+{\dbch\af5\rtlch \ltrch\loch\loch\f5
+E-mail dadsouch at gmail.com}
+\par \pard
+\pard\plain \s123\sl240\slmult0\ql\widctlpar
+{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}
+\aspalpha\li2160\ri0\lin2160\rin0\fi0\sb0\sa440\ltrpar\cf0\expnd-4\expndtw-20\dbch\af6\langfe255\dbch\af6\afs20\alang1025\loch\f6\fs48\lang1033\li-11\ri0\lin-11\rin0\fi0\sb0\sa144
+{\dbch\af5\rtlch \ltrch\loch\loch\f5
+M}
+{\dbch\af5\rtlch \ltrch\loch\loch\f5
+ichael P. Soucheray}
+\par \pard\plain \s114\sl220\slmult0\ql\widctlpar\tx2160\tqr\tx6480
+{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}
+\aspalpha\li0\ri-360\lin0\rin-360\fi0\sb220\sa40\ltrpar\cf0\dbch\af6\langfe255\dbch\af6\afs20\alang1025\loch\f6\fs20\lang1033\li-11\ri0\lin-11\rin0\fi0\sb0\sa144
+{\dbch\af5\rtlch \ltrch\loch\loch\f5
+Experienced general}
+\par }
diff --git a/sw/qa/extras/rtfexport/rtfexport.cxx b/sw/qa/extras/rtfexport/rtfexport.cxx
index 5294670..fffb959 100644
--- a/sw/qa/extras/rtfexport/rtfexport.cxx
+++ b/sw/qa/extras/rtfexport/rtfexport.cxx
@@ -32,6 +32,7 @@
 #include <com/sun/star/text/XPageCursor.hpp>
 #include <com/sun/star/text/XTextViewCursorSupplier.hpp>
 #include <com/sun/star/view/XViewSettingsSupplier.hpp>
+#include <com/sun/star/text/RelOrientation.hpp>
 
 #include <vcl/svapp.hxx>
 #include <swmodeltestbase.hxx>
@@ -70,6 +71,7 @@ public:
     void testFdo53604();
     void testFdo52286();
     void testFdo61507();
+    void testFdo30983();
 
     CPPUNIT_TEST_SUITE(Test);
 #if !defined(MACOSX) && !defined(WNT)
@@ -115,6 +117,7 @@ void Test::run()
         {"fdo53604.odt", &Test::testFdo53604},
         {"fdo52286.odt", &Test::testFdo52286},
         {"fdo61507.rtf", &Test::testFdo61507},
+        {"fdo30983.rtf", &Test::testFdo30983},
     };
     // Don't test the first import of these, for some reason those tests fail
     const char* aBlacklist[] = {
@@ -482,6 +485,16 @@ void Test::testFdo61507()
     CPPUNIT_ASSERT_EQUAL(6, getLength());
 }
 
+void Test::testFdo30983()
+{
+    // These were 'page text area', not 'entire page', i.e. both the horizontal
+    // and vertical positions were incorrect.
+    uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(mxComponent, uno::UNO_QUERY);
+    uno::Reference<container::XIndexAccess> xDraws(xDrawPageSupplier->getDrawPage(), uno::UNO_QUERY);
+    CPPUNIT_ASSERT_EQUAL(text::RelOrientation::PAGE_FRAME, getProperty<sal_Int16>(xDraws->getByIndex(0), "HoriOrientRelation"));
+    CPPUNIT_ASSERT_EQUAL(text::RelOrientation::PAGE_FRAME, getProperty<sal_Int16>(xDraws->getByIndex(0), "VertOrientRelation"));
+}
+
 CPPUNIT_TEST_SUITE_REGISTRATION(Test);
 
 CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/sw/source/filter/inc/rtf.hxx b/sw/source/filter/inc/rtf.hxx
index f2fc54f..f82780a 100644
--- a/sw/source/filter/inc/rtf.hxx
+++ b/sw/source/filter/inc/rtf.hxx
@@ -27,7 +27,7 @@ class RTFVertOrient
     union {
         struct {
             sal_uInt16 nOrient : 4;
-            sal_uInt16 nRelOrient : 1;
+            sal_uInt16 nRelOrient : 4;
         } Flags;
         sal_uInt16 nVal;
     } Value;
@@ -52,7 +52,7 @@ class RTFHoriOrient
         struct {
             sal_uInt16 nOrient : 4;
             sal_uInt16 nRelAnchor : 4;
-            sal_uInt16 nRelOrient : 1;
+            sal_uInt16 nRelOrient : 4;
         } Flags;
         sal_uInt16 nVal;
     } Value;
diff --git a/sw/source/filter/ww8/rtfattributeoutput.cxx b/sw/source/filter/ww8/rtfattributeoutput.cxx
index 39fd23b..6d9320e 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.cxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.cxx
@@ -2770,7 +2770,15 @@ void RtfAttributeOutput::FormatVertOrientation( const SwFmtVertOrient& rFlyVert
 
     if ( m_rExport.bOutFlyFrmAttrs && m_rExport.bRTFFlySyntax )
     {
-        m_aRunText->append(OOO_STRING_SVTOOLS_RTF_PVPARA);
+        switch (rFlyVert.GetRelationOrient())
+        {
+            case text::RelOrientation::PAGE_FRAME:
+                m_aRunText->append(OOO_STRING_SVTOOLS_RTF_PVPG);
+            break;
+            default:
+                m_aRunText->append(OOO_STRING_SVTOOLS_RTF_PVPARA);
+            break;
+        }
 
         switch (rFlyVert.GetVertOrient())
         {
@@ -2808,7 +2816,15 @@ void RtfAttributeOutput::FormatHorizOrientation( const SwFmtHoriOrient& rFlyHori
 
     if ( m_rExport.bOutFlyFrmAttrs && m_rExport.bRTFFlySyntax )
     {
-        m_aRunText->append(OOO_STRING_SVTOOLS_RTF_PHCOL);
+        switch (rFlyHori.GetRelationOrient())
+        {
+            case text::RelOrientation::PAGE_FRAME:
+                m_aRunText->append(OOO_STRING_SVTOOLS_RTF_PHPG);
+            break;
+            default:
+                m_aRunText->append(OOO_STRING_SVTOOLS_RTF_PHCOL);
+            break;
+        }
 
         const char* pS = 0;
         switch(rFlyHori.GetHoriOrient())
diff --git a/writerfilter/source/rtftok/rtffly.hxx b/writerfilter/source/rtftok/rtffly.hxx
index 9e2141c..918f800 100644
--- a/writerfilter/source/rtftok/rtffly.hxx
+++ b/writerfilter/source/rtftok/rtffly.hxx
@@ -99,7 +99,7 @@ namespace writerfilter {
                     struct
                     {
                         sal_uInt16 nOrient : 4;
-                        sal_uInt16 nRelOrient : 1;
+                        sal_uInt16 nRelOrient : 4;
                     } Flags;
                     sal_uInt16 nVal;
                 } Value;
@@ -180,7 +180,7 @@ namespace writerfilter {
                     {
                         sal_uInt16 nOrient : 4;
                         sal_uInt16 nRelAnchor : 4;
-                        sal_uInt16 nRelOrient : 1;
+                        sal_uInt16 nRelOrient : 4;
                     } Flags;
                     sal_uInt16 nVal;
                 } Value;
commit 79863bd45491bc258131019050e15a209a0352f8
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 11:55:58 2013 +0200

    WaE: macro is not used
    
    Change-Id: I1a063d7ffa1ab051fe4c3d57f4c8c33d4cd3fe87

diff --git a/vcl/source/filter/graphicfilter.cxx b/vcl/source/filter/graphicfilter.cxx
index dddc3a5..2070b76 100644
--- a/vcl/source/filter/graphicfilter.cxx
+++ b/vcl/source/filter/graphicfilter.cxx
@@ -64,8 +64,10 @@
 
 #define PMGCHUNG_msOG       0x6d734f47      // Microsoft Office Animated GIF
 
+#ifndef DISABLE_DYNLOADING
 #define IMPORT_FUNCTION_NAME    "GraphicImport"
 #define EXPORT_FUNCTION_NAME    "GraphicExport"
+#endif
 
 using namespace ::rtl;
 using namespace ::com::sun::star;
diff --git a/vcl/source/gdi/pdfwriter_impl.cxx b/vcl/source/gdi/pdfwriter_impl.cxx
index d49f5fa..1307193 100644
--- a/vcl/source/gdi/pdfwriter_impl.cxx
+++ b/vcl/source/gdi/pdfwriter_impl.cxx
@@ -99,7 +99,9 @@ using ::rtl::OUStringBuffer;
 #define DEBUG_DISABLE_PDFCOMPRESSION // also do not compress streams
 #endif
 
+#if !defined(ANDROID) && !defined(IOS)
 #define MAX_SIGNATURE_CONTENT_LENGTH 0x4000
+#endif
 
 #ifdef DO_TEST_PDF
 class PDFTestOutputStream : public PDFOutputStream
commit a8c3c673eaec987e9fe47123f60e5f9d34a4e93f
Author: Tor Lillqvist <tml at iki.fi>
Date:   Wed Mar 27 11:35:40 2013 +0200

    Use <config_features.h> instead of -DLIBO_FEATURE_*
    
    Change-Id: Idc198beb6d759dbe3bad6ea58d896c1555b4cc0f

diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx
index 6a3e3de..1f57c2e 100644
--- a/desktop/source/app/app.cxx
+++ b/desktop/source/app/app.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include "sal/config.h"
 
 #include <iostream>
@@ -1387,7 +1389,7 @@ int Desktop::Main()
 
     CommandLineArgs& rCmdLineArgs = GetCommandLineArgs();
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
     OUString aUnknown( rCmdLineArgs.GetUnknown() );
     if ( !aUnknown.isEmpty() )
     {
@@ -1452,7 +1454,7 @@ int Desktop::Main()
         RTL_LOGFILE_CONTEXT_TRACE( aLog, "desktop (lo119109) Desktop::Main -> Lockfile" );
         m_xLockfile.reset(new Lockfile);
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
         if ( !rCmdLineArgs.IsHeadless() && !rCmdLineArgs.IsInvisible() &&
              !rCmdLineArgs.IsNoLockcheck() && !m_xLockfile->check( Lockfile_execWarning ))
         {
@@ -1539,7 +1541,7 @@ int Desktop::Main()
         */
         Application::GetDefaultDevice();
 
-#ifdef LIBO_FEATURE_DESKTOP
+#ifndef DISABLE_EXTENSIONS
         // Check if bundled or shared extensions were added /removed
         // and process those extensions (has to be done before checking
         // the extension dependencies!
diff --git a/desktop/source/app/cmdlineargs.cxx b/desktop/source/app/cmdlineargs.cxx
index b8cf153..aded249 100644
--- a/desktop/source/app/cmdlineargs.cxx
+++ b/desktop/source/app/cmdlineargs.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include <cmdlineargs.hxx>
 #include <vcl/svapp.hxx>
 #include <rtl/uri.hxx>
@@ -442,7 +444,7 @@ bool CommandLineArgs::InterpretCommandLineParameter( const ::rtl::OUString& aArg
     {
         m_nologo = true;
     }
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
     else if ( oArg == "nolockcheck" )
     {
         m_nolockcheck = true;
diff --git a/desktop/source/app/officeipcthread.cxx b/desktop/source/app/officeipcthread.cxx
index 071e2bb..bcade31 100644
--- a/desktop/source/app/officeipcthread.cxx
+++ b/desktop/source/app/officeipcthread.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
 
 #include "app.hxx"
 #include "officeipcthread.hxx"
@@ -59,7 +60,7 @@ namespace {
 
 static char const ARGUMENT_PREFIX[] = "InternalIPC::Arguments";
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
 
 static char const SEND_ARGUMENTS[] = "InternalIPC::SendArguments";
 static char const PROCESSING_DONE[] = "InternalIPC::ProcessingDone";
@@ -105,7 +106,7 @@ namespace desktop
 
 namespace {
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
 
 class Parser: public CommandLineArgs::Supplier {
 public:
@@ -451,7 +452,7 @@ void OfficeIPCThread::RequestsCompleted( int nCount )
 
 OfficeIPCThread::Status OfficeIPCThread::EnableOfficeIPCThread()
 {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
     ::osl::MutexGuard   aGuard( GetMutex() );
 
     if( pGlobalOfficeIPCThread.is() )
@@ -613,7 +614,7 @@ OfficeIPCThread::Status OfficeIPCThread::EnableOfficeIPCThread()
 
 void OfficeIPCThread::DisableOfficeIPCThread(bool join)
 {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
     osl::ClearableMutexGuard aMutex( GetMutex() );
 
     if( pGlobalOfficeIPCThread.is() )
@@ -673,7 +674,7 @@ void OfficeIPCThread::SetReady(
 
 void OfficeIPCThread::execute()
 {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
     do
     {
         osl::StreamPipe aStreamPipe;
diff --git a/desktop/source/app/userinstall.cxx b/desktop/source/app/userinstall.cxx
index ec5c5ca..2a0aba9 100644
--- a/desktop/source/app/userinstall.cxx
+++ b/desktop/source/app/userinstall.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include "sal/config.h"
 
 #include "userinstall.hxx"
@@ -116,7 +118,7 @@ namespace desktop {
         }
     }
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
     static osl::FileBase::RC copy_recursive( const rtl::OUString& srcUnqPath, const rtl::OUString& dstUnqPath)
     {
         FileBase::RC err;
diff --git a/desktop/source/deployment/registry/help/dp_help.cxx b/desktop/source/deployment/registry/help/dp_help.cxx
index 5c660fb..35c798e 100644
--- a/desktop/source/deployment/registry/help/dp_help.cxx
+++ b/desktop/source/deployment/registry/help/dp_help.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
 
 #include "dp_help.hrc"
 #include "dp_backend.h"
@@ -31,7 +32,7 @@
 #include "uno/current_context.hxx"
 #include "unotools/pathoptions.hxx"
 
-#ifdef LIBO_FEATURE_HELP
+#if HAVE_FEATURE_HELP
 #include <helpcompiler/compilehelp.hxx>
 #include <helpcompiler/HelpIndexer.hxx>
 #endif
@@ -386,7 +387,7 @@ void BackendImpl::implProcessHelp(
             data.dataUrl = xPackage->getURL();
             if (!package->extensionContainsCompiledHelp())
             {
-#ifdef LIBO_FEATURE_HELP
+#if HAVE_FEATURE_HELP
                 const OUString sHelpFolder = createFolder(OUString(), xCmdEnv);
                 data.dataUrl = sHelpFolder;
 
diff --git a/framework/source/services/autorecovery.cxx b/framework/source/services/autorecovery.cxx
index ff3c844..00c3e07 100644
--- a/framework/source/services/autorecovery.cxx
+++ b/framework/source/services/autorecovery.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
 
 #include "services/autorecovery.hxx"
 #include <loadenv/loadenv.hxx>
@@ -2020,7 +2021,7 @@ void AutoRecovery::implts_changeAllDocVisibility(sal_Bool bVisible)
 */
 void lc_removeLockFile(AutoRecovery::TDocumentInfo& rInfo)
 {
-#ifndef LIBO_FEATURE_DESKTOP
+#if !HAVE_FEATURE_MULTIUSER_ENVIRONMENT
     (void) rInfo;
 #else
     if ( rInfo.Document.is() )
diff --git a/sc/source/ui/docshell/docsh.cxx b/sc/source/ui/docshell/docsh.cxx
index b87bb7b..792c1b7 100644
--- a/sc/source/ui/docshell/docsh.cxx
+++ b/sc/source/ui/docshell/docsh.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include "docsh.hxx"
 
 #include "scitems.hxx"
@@ -635,7 +637,7 @@ void ScDocShell::Notify( SfxBroadcaster&, const SfxHint& rHint )
         {
             case SFX_EVENT_LOADFINISHED:
                 {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                     // the readonly documents should not be opened in shared mode
                     if ( HasSharedXMLFlagSet() && !SC_MOD()->IsInSharedDocLoading() && !IsReadOnly() )
                     {
@@ -660,7 +662,7 @@ void ScDocShell::Notify( SfxBroadcaster&, const SfxHint& rHint )
                 break;
             case SFX_EVENT_VIEWCREATED:
                 {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                     if ( IsDocShared() && !SC_MOD()->IsInSharedDocLoading() )
                     {
                         ScAppOptions aAppOptions = SC_MOD()->GetAppOptions();
@@ -720,7 +722,7 @@ void ScDocShell::Notify( SfxBroadcaster&, const SfxHint& rHint )
                 break;
             case SFX_EVENT_SAVEDOC:
                 {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                     if ( IsDocShared() && !SC_MOD()->IsInSharedDocSaving() )
                     {
                         bool bSuccess = false;
diff --git a/sc/source/ui/docshell/docsh4.cxx b/sc/source/ui/docshell/docsh4.cxx
index f9c09de..70c911d 100644
--- a/sc/source/ui/docshell/docsh4.cxx
+++ b/sc/source/ui/docshell/docsh4.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include <com/sun/star/embed/XEmbeddedObject.hpp>
 #include <com/sun/star/frame/Desktop.hpp>
 #include <com/sun/star/frame/XComponentLoader.hpp>
@@ -727,7 +729,7 @@ void ScDocShell::Execute( SfxRequest& rReq )
                     if ( !pOtherDocSh->GetError() )                 // nur Errors
                     {
                         sal_Bool bHadTrack = ( aDocument.GetChangeTrack() != NULL );
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                         sal_uLong nStart = 0;
                         if ( nSlot == SID_DOCUMENT_MERGE && pChangeTrack )
                         {
@@ -767,7 +769,7 @@ void ScDocShell::Execute( SfxRequest& rReq )
                                 aDocument.SetChangeViewSettings(aChangeViewSet);
                             }
                         }
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                         else if ( nSlot == SID_DOCUMENT_MERGE && IsDocShared() && pChangeTrack )
                         {
                             sal_uLong nEnd = pChangeTrack->GetActionMax();
@@ -898,7 +900,7 @@ void ScDocShell::Execute( SfxRequest& rReq )
         }
         break;
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
         case SID_SHARE_DOC:
             {
                 ScViewData* pViewData = GetViewData();
@@ -2301,7 +2303,7 @@ IMPL_LINK( ScDocShell, DialogClosedHdl, sfx2::FileDialogHelper*, _pFileDlg )
     return 0;
 }
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
 
 void ScDocShell::EnableSharedSettings( bool bEnable )
 {
diff --git a/sc/source/ui/unoobj/confuno.cxx b/sc/source/ui/unoobj/confuno.cxx
index 4b4e293..4c42538 100644
--- a/sc/source/ui/unoobj/confuno.cxx
+++ b/sc/source/ui/unoobj/confuno.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include "confuno.hxx"
 #include "unonames.hxx"
 #include "scdll.hxx"
@@ -257,7 +259,7 @@ void SAL_CALL ScDocumentConfiguration::setPropertyValue(
             }
             else if ( aPropertyName.compareToAscii( SC_UNO_SHAREDOC ) == 0 )
             {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                 sal_Bool bDocShared = false;
                 if ( aValue >>= bDocShared )
                 {
@@ -418,7 +420,7 @@ uno::Any SAL_CALL ScDocumentConfiguration::getPropertyValue( const rtl::OUString
                 aRet <<= pDocShell->IsLoadReadonly();
             else if ( aPropertyName.compareToAscii( SC_UNO_SHAREDOC ) == 0 )
             {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                 ScUnoHelpFunctions::SetBoolInAny( aRet, pDocShell->HasSharedXMLFlagSet() );
 #endif
             }
diff --git a/sc/source/ui/view/viewfunc.cxx b/sc/source/ui/view/viewfunc.cxx
index 80e9c2f..e46a6bd 100644
--- a/sc/source/ui/view/viewfunc.cxx
+++ b/sc/source/ui/view/viewfunc.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include "scitems.hxx"
 #include <editeng/eeitem.hxx>
 
@@ -1531,7 +1533,7 @@ void ScViewFunc::DeleteCells( DelCellCmd eCmd, sal_Bool bRecord )
         ScDocShell* pDocSh = GetViewData()->GetDocShell();
         const ScMarkData& rMark = GetViewData()->GetMarkData();
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
         // #i94841# [Collaboration] if deleting rows is rejected, the content is sometimes wrong
         if ( pDocSh->IsDocShared() && ( eCmd == DEL_DELROWS || eCmd == DEL_DELCOLS ) )
         {
diff --git a/sfx2/inc/sfx2/objsh.hxx b/sfx2/inc/sfx2/objsh.hxx
index caaf4e3..2070f6b 100644
--- a/sfx2/inc/sfx2/objsh.hxx
+++ b/sfx2/inc/sfx2/objsh.hxx
@@ -19,6 +19,8 @@
 #ifndef _SFX_OBJSH_HXX
 #define _SFX_OBJSH_HXX
 
+#include <config_features.h>
+
 #include "sal/config.h"
 
 #include "tools/solar.h"
@@ -271,7 +273,7 @@ public:
     virtual sal_Bool            AcceptStateUpdate() const;
     sal_Bool                    IsHelpDocument() const;
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
     sal_Bool                    IsDocShared() const;
     ::rtl::OUString             GetSharedFileURL() const;
     sal_Bool                    SwitchToShared( sal_Bool bShared, sal_Bool bSave );
diff --git a/sfx2/source/doc/docfile.cxx b/sfx2/source/doc/docfile.cxx
index 18b1d3d..5afe39c 100644
--- a/sfx2/source/doc/docfile.cxx
+++ b/sfx2/source/doc/docfile.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include <sfx2/docfile.hxx>
 #include "sfx2/signaturestate.hxx"
 
@@ -135,7 +137,7 @@ static const sal_Int8 LOCK_UI_NOLOCK = 0;
 static const sal_Int8 LOCK_UI_SUCCEEDED = 1;
 static const sal_Int8 LOCK_UI_TRY = 2;
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
 
 bool IsSystemFileLockingUsed()
 {
@@ -984,7 +986,7 @@ sal_Int8 SfxMedium::ShowLockedDocumentDialog( const uno::Sequence< ::rtl::OUStri
 
 namespace
 {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
     bool isSuitableProtocolForLocking(const String & rLogicName)
     {
         INetURLObject aUrl( rLogicName );
@@ -999,7 +1001,7 @@ namespace
 // if user cancel the loading the ERROR_ABORT is set
 bool SfxMedium::LockOrigFileOnDemand( sal_Bool bLoading, sal_Bool bNoUI )
 {
-#ifndef LIBO_FEATURE_DESKTOP
+#if !HAVE_FEATURE_MULTIUSER_ENVIRONMENT
     (void) bLoading;
     (void) bNoUI;
     return true;
@@ -2682,7 +2684,7 @@ void SfxMedium::CloseAndRelease()
 
 void SfxMedium::UnlockFile( sal_Bool bReleaseLockStream )
 {
-#ifndef LIBO_FEATURE_DESKTOP
+#if !HAVE_FEATURE_MULTIUSER_ENVIRONMENT
     (void) bReleaseLockStream;
 #else
     if ( pImp->m_xLockingStream.is() )
diff --git a/sfx2/source/doc/objmisc.cxx b/sfx2/source/doc/objmisc.cxx
index 2ac11f0..853eddb 100644
--- a/sfx2/source/doc/objmisc.cxx
+++ b/sfx2/source/doc/objmisc.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
 
 #include <svl/inetmsg.hxx>
 #include <tools/diagnose_ex.h>
@@ -495,7 +496,7 @@ void SfxObjectShell::SetModalMode_Impl( sal_Bool bModal )
     }
 }
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
 
 sal_Bool SfxObjectShell::SwitchToShared( sal_Bool bShared, sal_Bool bSave )
 {
diff --git a/sfx2/source/doc/objstor.cxx b/sfx2/source/doc/objstor.cxx
index e06de13..250a640 100644
--- a/sfx2/source/doc/objstor.cxx
+++ b/sfx2/source/doc/objstor.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include "sal/config.h"
 
 #include <cassert>
@@ -2687,7 +2689,7 @@ sal_Bool SfxObjectShell::CommonSaveAs_Impl
             if ( pFilterOptItem )
                 pSet->Put( *pFilterOptItem );
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
             if ( IsDocShared() && !aTempFileURL.isEmpty() )
             {
                 // this is a shared document that has to be disconnected from the old location
diff --git a/sfx2/source/doc/objxtor.cxx b/sfx2/source/doc/objxtor.cxx
index 44d4ae3..b0a0213 100644
--- a/sfx2/source/doc/objxtor.cxx
+++ b/sfx2/source/doc/objxtor.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
 
 #include "arrdecl.hxx"
 #include <map>
@@ -390,7 +391,7 @@ SfxObjectShell::~SfxObjectShell()
     {
         pMedium->CloseAndReleaseStreams_Impl();
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
         if ( IsDocShared() )
             FreeSharedFile();
 #endif
diff --git a/sfx2/source/doc/sfxbasemodel.cxx b/sfx2/source/doc/sfxbasemodel.cxx
index 170ae60..232e04f 100644
--- a/sfx2/source/doc/sfxbasemodel.cxx
+++ b/sfx2/source/doc/sfxbasemodel.cxx
@@ -17,6 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
+
 #include <sfx2/sfxbasemodel.hxx>
 
 #include <com/sun/star/task/XInteractionHandler.hpp>
@@ -2952,7 +2954,7 @@ void SfxBaseModel::impl_store(  const   ::rtl::OUString&                   sURL
                     }
                     catch( const lang::IllegalArgumentException& )
                     {
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                         // some additional arguments do not allow to use saving, SaveAs should be done
                         // but only for normal documents, the shared documents would be overwritten in this case
                         // that would mean an information loss
diff --git a/sfx2/source/view/viewfrm.cxx b/sfx2/source/view/viewfrm.cxx
index bac1cd4..c4cfce5 100644
--- a/sfx2/source/view/viewfrm.cxx
+++ b/sfx2/source/view/viewfrm.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
 
 #include <stdio.h>
 
@@ -673,7 +674,7 @@ void SfxViewFrame::ExecReload_Impl( SfxRequest& rReq )
                     pNewSet->ClearItem( SID_DOC_SALVAGE );
                 }
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                 // TODO/LATER: Temporary solution, the SfxMedium must know the original URL as aLogicName
                 //             SfxMedium::Transfer_Impl() will be forbidden then.
                 if ( xOldObj->IsDocShared() )
@@ -790,7 +791,7 @@ void SfxViewFrame::ExecReload_Impl( SfxRequest& rReq )
                         xNewObj->SetReadOnlyUI( !bForEdit );
                     }
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT
                     if ( xNewObj->IsDocShared() )
                     {
                         // the file is shared but the closing can change the sharing control file
diff --git a/solenv/gbuild/Helper.mk b/solenv/gbuild/Helper.mk
index 0b32fc7..0a732c2 100644
--- a/solenv/gbuild/Helper.mk
+++ b/solenv/gbuild/Helper.mk
@@ -218,10 +218,6 @@ define gb_Helper_define_if_set
 $(foreach def,$(1),$(if $(filter TRUE YES,$($(def))),-D$(def)))
 endef
 
-define gb_Helper_define_if_in
-$(foreach def,$(1),$(if $(filter $(def),$(2)),-DLIBO_FEATURE_$(def)))
-endef
-
 define gb_Helper_execute
 $(call gb_Executable_get_command,$(firstword $(1))) $(wordlist 2,$(words $(1)),$(1))
 endef
diff --git a/solenv/gbuild/gbuild.mk b/solenv/gbuild/gbuild.mk
index d026cd9..5a4161e 100644
--- a/solenv/gbuild/gbuild.mk
+++ b/solenv/gbuild/gbuild.mk
@@ -277,9 +277,6 @@ gb_GLOBALDEFS += \
 		ENABLE_READONLY_INSTALLSET \
 	)
 
-gb_GLOBALDEFS += \
-    $(call gb_Helper_define_if_in,DESKTOP HELP,$(BUILD_TYPE))
-
 gb_GLOBALDEFS := $(sort $(gb_GLOBALDEFS))
 
 include $(GBUILDDIR)/Deliver.mk
diff --git a/sw/source/ui/uiview/viewport.cxx b/sw/source/ui/uiview/viewport.cxx
index 1550da7..586016e 100644
--- a/sw/source/ui/uiview/viewport.cxx
+++ b/sw/source/ui/uiview/viewport.cxx
@@ -17,6 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <config_features.h>
 
 #include "hintids.hxx"
 #include <vcl/help.hxx>
@@ -1056,7 +1057,7 @@ void SwView::OuterResizePixel( const Point &rOfst, const Size &rSize )
         return;
     m_bInOuterResizePixel = sal_True;
 
-#ifdef LIBO_FEATURE_DESKTOP
+#if HAVE_FEATURE_DESKTOP
 // feststellen, ob Scrollbars angezeigt werden duerfen
     sal_Bool bShowH = sal_True,
          bShowV = sal_True,
@@ -1203,7 +1204,7 @@ void SwView::SetZoomFactor( const Fraction &rX, const Fraction &rY )
 
 sal_Bool SwView::UpdateScrollbars()
 {
-#ifndef LIBO_FEATURE_DESKTOP
+#if !HAVE_FEATURE_DESKTOP
     return sal_True;
 #else

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list