sd/qa/unit/tiledrendering/tiledrendering.cxx | 17 +++++++++++++++++ sd/source/ui/view/Outliner.cxx | 7 ++----- 2 files changed, 19 insertions(+), 5 deletions(-)
New commits: commit ed5450f2a5ed8e72b48b4d976217746cea04a5c9 Author: Jan Holesovsky <ke...@collabora.com> Date: Mon Jan 25 21:49:31 2016 +0100 sd lok: Fix normal 'search' performed after a 'search all'. The DBG_ASSERT followed by the same test actually returning immediately prevents the actual 'search' after a 'search all' being performed. I hope this does not have any negative consequences; but if it does, we should fix the root cause, instead of having this kind of defensive programming here. Change-Id: I909533f301dda9c20cab1968de45e5fa7975e852 diff --git a/sd/qa/unit/tiledrendering/tiledrendering.cxx b/sd/qa/unit/tiledrendering/tiledrendering.cxx index 296964d..fab2c4e 100644 --- a/sd/qa/unit/tiledrendering/tiledrendering.cxx +++ b/sd/qa/unit/tiledrendering/tiledrendering.cxx @@ -55,6 +55,7 @@ public: void testSearchAll(); void testSearchAllSelections(); void testSearchAllNotifications(); + void testSearchAllFollowedBySearch(); #endif CPPUNIT_TEST_SUITE(SdTiledRenderingTest); @@ -70,6 +71,7 @@ public: CPPUNIT_TEST(testSearchAll); CPPUNIT_TEST(testSearchAllSelections); CPPUNIT_TEST(testSearchAllNotifications); + CPPUNIT_TEST(testSearchAllFollowedBySearch); #endif CPPUNIT_TEST_SUITE_END(); @@ -482,6 +484,21 @@ void SdTiledRenderingTest::testSearchAllNotifications() comphelper::LibreOfficeKit::setActive(false); } +void SdTiledRenderingTest::testSearchAllFollowedBySearch() +{ + comphelper::LibreOfficeKit::setActive(); + SdXImpressDocument* pXImpressDocument = createDoc("search-all.odp"); + pXImpressDocument->registerCallback(&SdTiledRenderingTest::callback, this); + + lcl_search("third", /*bFindAll=*/true); + lcl_search("match", /*bFindAll=*/false); + + OString aUsedFormat; + // This used to give wrong result: 'search' after 'search all' still + // returned 'third' + CPPUNIT_ASSERT_EQUAL(OString("match"), pXImpressDocument->getTextSelection("text/plain;charset=utf-8", aUsedFormat)); +} + #endif CPPUNIT_TEST_SUITE_REGISTRATION(SdTiledRenderingTest); diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx index ce7aef6..de9756e 100644 --- a/sd/source/ui/view/Outliner.cxx +++ b/sd/source/ui/view/Outliner.cxx @@ -705,11 +705,8 @@ bool Outliner::SearchAndReplaceOnce(std::vector<SearchSelection>* pSelections) DetectChange (); OutlinerView* pOutlinerView = mpImpl->GetOutlinerView(); - DBG_ASSERT(pOutlinerView!=nullptr && GetEditEngine().HasView( &pOutlinerView->GetEditView() ), - "SearchAndReplace without valid view!" ); - - if( nullptr == pOutlinerView || !GetEditEngine().HasView( &pOutlinerView->GetEditView() ) ) - return true; + if (!pOutlinerView) + return true; // end of search std::shared_ptr<ViewShell> pViewShell (mpWeakViewShell.lock()); if (pViewShell != nullptr) _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits