[libreoffice] 37/152: backport fix for ppc64el

Rene Engelhard rene at moszumanska.debian.org
Thu Jul 27 19:16:54 UTC 2017


This is an automated email from the git hooks/post-receive script.

rene pushed a commit to tag libreoffice_3.5.0_rc3-0ubuntu2
in repository libreoffice.

commit 46b693978ac8b1146259fafcbebc4598d18f616e
Author: Bjoern Michaelsen <bjoern.michaelsen at canonical.com>
Date:   Thu Feb 4 14:58:37 2016 +0100

    backport fix for ppc64el
---
 changelog                    |  3 ++-
 patches/ScValidationDlg.diff | 54 ++++++++++++++++++++++++++++++++++++++++++++
 patches/series               |  1 +
 3 files changed, 57 insertions(+), 1 deletion(-)

diff --git a/changelog b/changelog
index 579f70f..901e370 100644
--- a/changelog
+++ b/changelog
@@ -1,8 +1,9 @@
 libreoffice (1:5.1.0~rc3-0ubuntu1) xenial; urgency=medium
 
   * bump to rc3
+  * backport fix for ppc64el ftbfs
 
- -- Bjoern Michaelsen <bjoern.michaelsen at canonical.com>  Thu, 04 Feb 2016 11:12:59 +0100
+ -- Bjoern Michaelsen <bjoern.michaelsen at canonical.com>  Thu, 04 Feb 2016 14:49:53 +0100
 
 libreoffice (1:5.1.0~rc2-0ubuntu2) xenial; urgency=medium
 
diff --git a/patches/ScValidationDlg.diff b/patches/ScValidationDlg.diff
new file mode 100644
index 0000000..82b88ea
--- /dev/null
+++ b/patches/ScValidationDlg.diff
@@ -0,0 +1,54 @@
+From bf46969b89470e69494ccc02ef6978180c5552da Mon Sep 17 00:00:00 2001
+From: Stephan Bergmann <sbergman at redhat.com>
+Date: Tue, 19 Jan 2016 10:58:44 +0100
+Subject: [PATCH] Make virtual ~ScValidationDlg non-inline
+
+...otherwise, GCC 6 would aggressively inline ScValidationDlg destruction of the
+VclPtr<ScValidationDlg> in ScValidityRefChildWin::ScValidityRefChildWin
+(sc/source/ui/view/reffact.cxx, in sc library), checking whether the vtable
+points at ~ScValidationDlg (instead of a derived class dtor) to directly inline
+the ~ScValidationDlg code, which requires the ScValidateionDlg vtable (to store
+it in the object's vtable during destruction), which requires the code of inline
+virtual ScValidationDlg::dispose and ScValidationDlg::Close, which in turn need
+the addresses of (non-inline) ScValidationDlg::RemoveRefDlg and
+ScTPValidationValue::RemoveRefDlg, both defined in the scui library and not
+exported from there.
+
+Change-Id: I7eb96f42deb5edd844d91e999aa5511679302c01
+---
+ sc/source/ui/dbgui/validate.cxx | 5 +++++
+ sc/source/ui/inc/validate.hxx   | 2 +-
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/sc/source/ui/dbgui/validate.cxx b/sc/source/ui/dbgui/validate.cxx
+index 459c5d7..db73012 100644
+--- a/sc/source/ui/dbgui/validate.cxx
++++ b/sc/source/ui/dbgui/validate.cxx
+@@ -96,6 +96,11 @@ ScValidationDlg::ScValidationDlg(vcl::Window* pParent, const SfxItemSet* pArgSet
+     get(m_pHBox, "refinputbox");
+ }
+ 
++ScValidationDlg::~ScValidationDlg()
++{
++    disposeOnce();
++}
++
+ void ScTPValidationValue::SetReferenceHdl( const ScRange&rRange , ScDocument* pDoc )
+ {
+     if ( rRange.aStart != rRange.aEnd )
+diff --git a/sc/source/ui/inc/validate.hxx b/sc/source/ui/inc/validate.hxx
+index d39b99b..1e785b7 100644
+--- a/sc/source/ui/inc/validate.hxx
++++ b/sc/source/ui/inc/validate.hxx
+@@ -182,7 +182,7 @@ class ScValidationDlg
+ 
+ public:
+     explicit ScValidationDlg( vcl::Window* pParent, const SfxItemSet* pArgSet, ScTabViewShell * pTabViewSh, SfxBindings *pB = nullptr );
+-    virtual                     ~ScValidationDlg() { disposeOnce(); }
++    virtual                     ~ScValidationDlg();
+     virtual void                dispose() override
+     {
+         if( m_bOwnRefHdlr )
+-- 
+2.5.0
+
diff --git a/patches/series b/patches/series
index 7767520..850e04c 100644
--- a/patches/series
+++ b/patches/series
@@ -29,3 +29,4 @@ rsc-no-error-about-unknown-switch.diff
 disable-npapi-plugin-support.diff
 lp-753627-readd-updated-Ubuntu-brand-palette-colors.diff
 integraltrans.diff
+ScValidationDlg.diff

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-openoffice/libreoffice.git



More information about the Pkg-openoffice-commits mailing list