diff --git a/0001-Resolves-rhbz-1164614-xslt-dialog-crashes-if-there-a.patch b/0001-Resolves-rhbz-1164614-xslt-dialog-crashes-if-there-a.patch new file mode 100644 index 0000000..476c5e0 --- /dev/null +++ b/0001-Resolves-rhbz-1164614-xslt-dialog-crashes-if-there-a.patch @@ -0,0 +1,60 @@ +From aa99cd6187c29bd958d4effaafce4d3a12fa31c0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= +Date: Mon, 8 Dec 2014 09:56:33 +0000 +Subject: [PATCH] Resolves: rhbz#1164614 xslt dialog crashes if there are no + entries + +Change-Id: Id7d967389cbc9f8ae120749bbe1c79bbbe46b212 +--- + filter/source/xsltdialog/xmlfiltersettingsdialog.cxx | 15 +++++++++++++++ + filter/source/xsltdialog/xmlfiltersettingsdialog.hxx | 1 + + 2 files changed, 16 insertions(+) + +diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx +index 8d85688..e698688 100644 +--- a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx ++++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx +@@ -1355,6 +1355,16 @@ SvxPathControl::SvxPathControl(Window* pParent) + #define ITEMID_NAME 1 + #define ITEMID_TYPE 2 + ++Size SvxPathControl::GetOptimalSize() const ++{ ++ Size aDefSize(LogicToPixel(Size(150, 0), MapMode(MAP_APPFONT))); ++ Size aOptSize(VclVBox::GetOptimalSize()); ++ long nRowHeight(GetTextHeight()); ++ aOptSize.Height() = nRowHeight * 10; ++ aOptSize.Width() = std::max(aDefSize.Width(), aOptSize.Width()); ++ return aOptSize; ++} ++ + void SvxPathControl::setAllocation(const Size &rAllocation) + { + VclVBox::setAllocation(rAllocation); +@@ -1366,6 +1376,11 @@ void SvxPathControl::setAllocation(const Size &rAllocation) + { + std::vector aWidths; + m_pFocusCtrl->getPreferredDimensions(aWidths); ++ if (aWidths.empty()) ++ { ++ bHasBeenShown = false; ++ return; ++ } + long nFirstColumnWidth = aWidths[1]; + m_pHeaderBar->SetItemSize(ITEMID_NAME, nFirstColumnWidth); + m_pHeaderBar->SetItemSize(ITEMID_TYPE, 0xFFFF); +diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx +index 7fbd362..86828af 100644 +--- a/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx ++++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx +@@ -44,6 +44,7 @@ private: + HeaderBar* m_pHeaderBar; + XMLFilterListBox* m_pFocusCtrl; + protected: ++ virtual Size GetOptimalSize() const SAL_OVERRIDE; + virtual void setAllocation(const Size &rAllocation) SAL_OVERRIDE; + public: + SvxPathControl(Window* pParent); +-- +1.9.3 + diff --git a/libreoffice.spec b/libreoffice.spec index 49d113e..29e4ac7 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -336,6 +336,7 @@ Patch80: 0001-Resolves-fdo-84043-don-t-create-duplicate-Mirrored-X.patch Patch81: 0001-Resolves-rhbz-1165444-abrt-crash-with-NULL-pView.patch Patch82: 0001-rhbz-1016758-Dispose-bridges-when-disposing-bridge-f.patch Patch83: 0001-fdo-79303-Revert-fdo-70861-SwToSfxPageDescAttr-fix-c.patch +Patch84: 0001-Resolves-rhbz-1164614-xslt-dialog-crashes-if-there-a.patch %define instdir %{_libdir} %define baseinstdir %{instdir}/libreoffice @@ -2277,10 +2278,11 @@ update-desktop-database %{_datadir}/applications &> /dev/null || : %endif %changelog -* Fri Nov 28 2014 Caolán McNamara - 1:4.2.7.2-12.unbuilt +* Mon Dec 08 2014 Caolán McNamara - 1:4.2.7.2-12 - Resolves: rhbz#1167683 crash in SwPostItMgr::HasNotes - Resolves: rhbz#1016758 crash on exit - Resolves: fdo#79303 Writer setting tabs with ruler changes page number offset +- Resolves: rhbz#1164614 xslt dialog crashes if there are no entries * Thu Nov 27 2014 Caolán McNamara - 1:4.2.7.2-11 - Resolves: fdo#84043 don't create duplicate Mirrored props