[Libreoffice-commits] core.git: 2 commits - external/breakpad scaddins/source

2017-01-25 Thread Stephan Bergmann
 external/breakpad/ExternalProject_breakpad.mk |2 +-
 scaddins/source/analysis/analysishelper.cxx   |   16 ++--
 2 files changed, 11 insertions(+), 7 deletions(-)

New commits:
commit d97bdf10d2654851d69a726b659d68eba3d9076e
Author: Stephan Bergmann 
Date:   Wed Jan 25 16:11:14 2017 +0100

Avoid calling log10(0)

...to avoid UBSan reporting during CppunitTest_sc_addin_functions_test:

[...]
> Testing 
file:///data/sbergman/lo-san/core/sc/qa/unit/data/functions/addin/fods/imabs.fods:
> warn:xmloff.style:14186:1:xmloff/source/style/xmlstyle.cxx:300: Here is a 
duplicate Style
> scaddins/source/analysis/analysishelper.cxx:949:37: runtime error: value 
-inf is outside the range of representable values of type 'int'
> #0 0x7f77717d11d6 in sca::analysis::ParseDouble(char16_t const*&, 
double&) scaddins/source/analysis/analysishelper.cxx:949:37
> #1 0x7f77717e39e5 in 
sca::analysis::Complex::ParseString(rtl::OUString const&, 
sca::analysis::Complex&) scaddins/source/analysis/analysishelper.cxx:1690:10
> #2 0x7f77717e317f in sca::analysis::Complex::Complex(rtl::OUString 
const&) scaddins/source/analysis/analysishelper.cxx:1664:10
> #3 0x7f777167fa79 in AnalysisAddIn::getImabs(rtl::OUString const&) 
scaddins/source/analysis/analysis.cxx:912:19
> #4 0x7f78148bd16a in gcc3::callVirtualMethod(void*, unsigned int, 
void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, 
unsigned long*, double*) 
bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod.cxx:77:5
> #5 0x7f78148b6b70 in 
cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy*, 
bridges::cpp_uno::shared::VtableSlot, _typelib_TypeDescriptionReference*, int, 
_typelib_MethodParameter*, void*, void**, _uno_Any**) 
bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:233:13
> #6 0x7f78148b3894 in 
bridges::cpp_uno::shared::unoInterfaceProxyDispatch(_uno_Interface*, 
_typelib_TypeDescription const*, void*, void**, _uno_Any**) 
bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:420:13
> #7 0x7f7772bdd096 in 
stoc_corefl::IdlInterfaceMethodImpl::invoke(com::sun::star::uno::Any const&, 
com::sun::star::uno::Sequence&) 
stoc/source/corereflection/criface.cxx:697:9
> #8 0x7f7772bdf45a in non-virtual thunk to 
stoc_corefl::IdlInterfaceMethodImpl::invoke(com::sun::star::uno::Any const&, 
com::sun::star::uno::Sequence&) 
stoc/source/corereflection/criface.cxx
> #9 0x7f77d3c63f17 in 
ScUnoAddInCall::ExecuteCallWithArgs(com::sun::star::uno::Sequence&)
 sc/source/core/tool/addincol.cxx:1466:31
> #10 0x7f77d3c631da in ScUnoAddInCall::ExecuteCall() 
sc/source/core/tool/addincol.cxx:1444:9
> #11 0x7f77d484504f in ScInterpreter::ScExternal() 
sc/source/core/tool/interpr4.cxx:2999:19
[...]

Change-Id: Ie31d6374bdac3ae11784d925011c5a67802cdf56

diff --git a/scaddins/source/analysis/analysishelper.cxx 
b/scaddins/source/analysis/analysishelper.cxx
index 5548c31..d542c04 100644
--- a/scaddins/source/analysis/analysishelper.cxx
+++ b/scaddins/source/analysis/analysishelper.cxx
@@ -946,15 +946,19 @@ bool ParseDouble( const sal_Unicode*& rp, double& rRet )
 rp = p;
 
 fInt += fFrac;
-sal_Int32   nLog10 = sal_Int32( log10( fInt ) );
 
-if( bNegExp )
-nExp = -nExp;
+if (fInt != 0.0) // exact check; log10(0.0) may entail a pole error
+{
+sal_Int32   nLog10 = sal_Int32( log10( fInt ) );
 
-if( nLog10 + nExp > nMaxExp )
-return false;
+if( bNegExp )
+nExp = -nExp;
 
-fInt = ::rtl::math::pow10Exp( fInt, nExp );
+if( nLog10 + nExp > nMaxExp )
+return false;
+
+fInt = ::rtl::math::pow10Exp( fInt, nExp );
+}
 
 if( bNegNum )
 fInt = -fInt;
commit 16bf916eee4148d66a13323aa69c1bb272c3219e
Author: Stephan Bergmann 
Date:   Wed Jan 25 16:05:23 2017 +0100

Pass gb_VISIBILITY_FLAGS into external/breakpad

...to avoid UBSan (on Linux) reporting a ODR violation between
google_breakpad::MinidumpDescriptor::kMicrodumpOnConsole (workdir/
UnpackedTarball/breakpad/src/client/linux/handler/minidump_descriptor.cc)
defined in both the crashreport and sofficeapp dynamic libs.

Change-Id: I686a6e2041c70f0aa17a774d705dc71d95d20183

diff --git a/external/breakpad/ExternalProject_breakpad.mk 
b/external/breakpad/ExternalProject_breakpad.mk
index 10fa6ce..f95b4b2 100644
--- a/external/breakpad/ExternalProject_breakpad.mk
+++ b/external/breakpad/ExternalProject_breakpad.mk
@@ -20,7 +20,7 @@ else # !ifeq($(COM),MSC)
 
 $(call gb_ExternalProject_get_state_target,breakpad,build) :
$(call gb_ExternalProject_run,build,\
-   CXX_FLAGS="-O2" ./configure \
+   ./configure CXXFLAGS="-O2 $(gb_VISIBILITY_FLAGS)" \
&& $(MAKE) \
)
 
___
Libreoffice-commits 

[Libreoffice-commits] core.git: 2 commits - external/breakpad sc/source

2017-01-06 Thread Caolán McNamara
 external/breakpad/README  |   22 +-
 sc/source/ui/condformat/condformatdlg.cxx |8 
 sc/source/ui/inc/condformatdlg.hxx|1 +
 3 files changed, 30 insertions(+), 1 deletion(-)

New commits:
commit ac561ab34ea9d26243fe3791f624c440dcf7ae6d
Author: Caolán McNamara 
Date:   Fri Jan 6 16:18:37 2017 +

Resolves: tdf#105061 Only one text box shown in case of 'between'

non-layout ScCondFormatList widget not responding to layout child change

Change-Id: I7edd4fc54de9e71fb86b47a9b182bfc22fa4af25

diff --git a/sc/source/ui/condformat/condformatdlg.cxx 
b/sc/source/ui/condformat/condformatdlg.cxx
index 22bd55a..b6e2191 100644
--- a/sc/source/ui/condformat/condformatdlg.cxx
+++ b/sc/source/ui/condformat/condformatdlg.cxx
@@ -157,6 +157,14 @@ void ScCondFormatList::Resize()
 RecalcAll();
 }
 
+void ScCondFormatList::queue_resize(StateChangedType eReason)
+{
+Control::queue_resize(eReason);
+if (!mpDialogParent) //detects that this is during dispose
+return;
+RecalcAll();
+}
+
 ScConditionalFormat* ScCondFormatList::GetConditionalFormat() const
 {
 if(maEntries.empty())
diff --git a/sc/source/ui/inc/condformatdlg.hxx 
b/sc/source/ui/inc/condformatdlg.hxx
index 62f3758..a79ae0d 100644
--- a/sc/source/ui/inc/condformatdlg.hxx
+++ b/sc/source/ui/inc/condformatdlg.hxx
@@ -66,6 +66,7 @@ public:
 condformat::dialog::ScCondFormatDialogType eType);
 
 virtual Size GetOptimalSize() const override;
+virtual void queue_resize(StateChangedType eReason = 
StateChangedType::Layout) override;
 virtual void Resize() override;
 
 ScConditionalFormat* GetConditionalFormat() const;
commit abf38a157eabe867fb23a85901e149a50e6782cd
Author: Michael Stahl 
Date:   Fri Jan 6 17:15:17 2017 +0100

breakpad: document how to read mini-dumps locally

Change-Id: I888930079fc93c609769ac31a025c410b9adad96

diff --git a/external/breakpad/README b/external/breakpad/README
index 41fbde6..dfd2bf9 100644
--- a/external/breakpad/README
+++ b/external/breakpad/README
@@ -1 +1,21 @@
-Render glTF 3D models.
+Google breakpad crash-reporting library
+
+https://chromium.googlesource.com/breakpad/breakpad
+
+When this is enabled and soffice.bin crashes, a "mini-dump" file is written
+as "instdir/crash/*.dmp".
+
+There is an UI to upload the mini-dump to a TDF server but of course
+that only makes sense if the server has symbols available that match
+the build, which is not the case if you have built LO yourself.
+
+If you want to get the backtrace from local mini-dump files:
+
+* with Visual Studio:
+  1. open the *.dmp file from the Visual Studio IDE File->Open->File
+  2. then click "Debug Native Only"
+
+* otherwise:
+  1. run "make symbols" to extract the debuginfo from the binaries
+  2. run "workdir/UnpackedTarball/breakpad/src/processor/minidump_stackwalk 
foo.dmp workdir/symbols"
+
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: 2 commits - external/breakpad

2016-06-26 Thread Markus Mohrhard
 external/breakpad/ExternalProject_breakpad.mk |2 +-
 external/breakpad/breakpad-stackwalk.patch.1  |4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

New commits:
commit 3f22898c157995eecf5dbd610591d378820cf992
Author: Markus Mohrhard 
Date:   Mon Jun 27 04:42:22 2016 +0200

I screwed up with the breakpad minidump_stackwalk patch

This does not affect normal LibreOffice and is only important for the
server side.

Change-Id: I270262ed6e1b22c3ef41099fda19fa386f386203

diff --git a/external/breakpad/breakpad-stackwalk.patch.1 
b/external/breakpad/breakpad-stackwalk.patch.1
index 9a3ce95..8df1fa3 100644
--- a/external/breakpad/breakpad-stackwalk.patch.1
+++ b/external/breakpad/breakpad-stackwalk.patch.1
@@ -24,9 +24,9 @@ diff -ur breakpad.org/src/processor/stackwalk_common.cc 
breakpad/src/processor/s
 kOutputSeparator, base_address + module->size() - 1,
 kOutputSeparator,
 -   main_module != NULL && base_address == main_address ? 1 : 0);
-+   main_module != NULL && base_address == main_address ? 1 : 0),
++   main_module != NULL && base_address == main_address ? 1 : 0,
 +   kOutputSeparator,
-+   
StripSeparator(PathnameStripper::File(module->code_identifier())).c_str();
++   
StripSeparator(PathnameStripper::File(module->code_identifier())).c_str());
}
  }
  
commit e54b208df3ee037a21c4d36678c5561c0f4718ae
Author: Markus Mohrhard 
Date:   Mon Jun 27 04:41:57 2016 +0200

always compile breakpad with O2

Change-Id: I4cda93fee47244cf3eb7b13bb6cb2a3eab007cf0

diff --git a/external/breakpad/ExternalProject_breakpad.mk 
b/external/breakpad/ExternalProject_breakpad.mk
index 70df68e..10fa6ce 100644
--- a/external/breakpad/ExternalProject_breakpad.mk
+++ b/external/breakpad/ExternalProject_breakpad.mk
@@ -20,7 +20,7 @@ else # !ifeq($(COM),MSC)
 
 $(call gb_ExternalProject_get_state_target,breakpad,build) :
$(call gb_ExternalProject_run,build,\
-   ./configure \
+   CXX_FLAGS="-O2" ./configure \
&& $(MAKE) \
)
 
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits