diff --git a/0001-Related-rhbz-702833-addEventListener-without-removeE.patch b/0001-Related-rhbz-702833-addEventListener-without-removeE.patch new file mode 100644 index 0000000..6a192bb --- /dev/null +++ b/0001-Related-rhbz-702833-addEventListener-without-removeE.patch @@ -0,0 +1,54 @@ +From 6f42aa185adc436d976da04b8b193dfe25d61f7a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= +Date: Fri, 17 Jun 2011 13:38:27 +0100 +Subject: [PATCH] Related: rhbz#702833 addEventListener without + removeEventListener + +--- + .../source/deployment/gui/dp_gui_extlistbox.cxx | 12 +++++++++++- + 1 files changed, 11 insertions(+), 1 deletions(-) + +diff --git a/desktop/source/deployment/gui/dp_gui_extlistbox.cxx b/desktop/source/deployment/gui/dp_gui_extlistbox.cxx +index 8cdf0a6..3d0d426 100644 +--- a/desktop/source/deployment/gui/dp_gui_extlistbox.cxx ++++ b/desktop/source/deployment/gui/dp_gui_extlistbox.cxx +@@ -970,18 +970,20 @@ long ExtensionBox_Impl::addEntry( const uno::Reference< deployment::XPackage > & + if ( ! pEntry->m_sTitle.Len() ) + return 0; + +- xPackage->addEventListener( uno::Reference< lang::XEventListener > ( m_xRemoveListener, uno::UNO_QUERY ) ); ++ bool bNewEntryInserted = false; + + ::osl::ClearableMutexGuard guard(m_entriesMutex); + if ( m_vEntries.empty() ) + { + m_vEntries.push_back( pEntry ); ++ bNewEntryInserted = true; + } + else + { + if ( !FindEntryPos( pEntry, 0, m_vEntries.size()-1, nPos ) ) + { + m_vEntries.insert( m_vEntries.begin()+nPos, pEntry ); ++ bNewEntryInserted = true; + } + else if ( !m_bInCheckMode ) + { +@@ -989,6 +991,14 @@ long ExtensionBox_Impl::addEntry( const uno::Reference< deployment::XPackage > & + } + } + ++ //Related: rhbz#702833 Only add a Listener if we're adding a new entry, to ++ //keep in sync with removeEventListener logic ++ if (bNewEntryInserted) ++ { ++ pEntry->m_xPackage->addEventListener(uno::Reference< lang::XEventListener > ( m_xRemoveListener, uno::UNO_QUERY ) ); ++ } ++ ++ + pEntry->m_bHasOptions = m_pManager->supportsOptions( xPackage ); + pEntry->m_bUser = xPackage->getRepositoryName().equals( USER_PACKAGE_MANAGER ); + pEntry->m_bShared = xPackage->getRepositoryName().equals( SHARED_PACKAGE_MANAGER ); +-- +1.7.5.4 + diff --git a/libreoffice.spec b/libreoffice.spec index 29c3414..a05d3b8 100644 --- a/libreoffice.spec +++ b/libreoffice.spec @@ -19,7 +19,7 @@ Summary: Free Software Productivity Suite Name: libreoffice Epoch: 1 Version: 3.4.1.1 -Release: 2%{?dist} +Release: 3%{?dist} License: LGPLv3 and LGPLv2+ and BSD and (MPLv1.1 or GPLv2 or LGPLv2 or Netscape) and (CDDL or GPLv2) and Public Domain Group: Applications/Productivity URL: http://www.documentfoundation.org/develop @@ -94,6 +94,7 @@ Patch15: 0001-rhbz-702635-set-correct-page-number-when-exporting-s.patch Patch16: 0001-handle-NULL-display-gracefully.patch Patch17: 0001-Related-rhbz-652604-better-survive-exceptions-thrown.patch Patch18: 0001-Resolves-rhbz-713154-pdf-export-dialog-too-tall-to-f.patch +Patch19: 0001-Related-rhbz-702833-addEventListener-without-removeE.patch %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} %define instdir %{_libdir} @@ -713,6 +714,7 @@ mv -f redhat.soc extras/source/palettes/standard.soc %patch16 -p1 -b .handle-NULL-display-gracefully.patch %patch17 -p1 -b .rhbz652604-better-survive-exceptions-thrown.patch %patch18 -p1 -b .rhbz713154-pdf-export-dialog-too-tall-to-f.patch +%patch19 -p1 -b .rhbz702833-addEventListener-without-removeE.patch # these are horribly incomplete--empty translations and copied english # strings with spattering of translated strings @@ -1993,6 +1995,9 @@ update-desktop-database %{_datadir}/applications &> /dev/null || : %{basisinstdir}/program/kde-open-url %changelog +* Fri Jun 17 2011 Caolán McNamara - 3.4.1.1-3 +- Related: rhbz#702833 addEventListener without removeEventListener + * Thu Jun 16 2011 Caolán McNamara - 3.4.1.1-2 - Resolves: rhbz#713154 pdf export dialog too tall to fit