summaryrefslogtreecommitdiff
path: root/cui
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2016-07-05 10:16:51 +0100
committerEike Rathke <erack@redhat.com>2016-07-11 19:04:13 +0000
commit18b904faafb756fd28d40467153d191122f6a731 (patch)
tree8a5724f3c062de1ef62c62d1bfd7fb5351e93b45 /cui
parent9bf8a970176b16d6bbd00199fd1d9ba6e73b35b5 (diff)
Resolves: rhbz#1352835 path options doesn't promptly destroy folder picker
Change-Id: I5133f63fd92f384221fa2812c6e2a0e7f3b37ac1 (cherry picked from commit 3bbc0574d78d129359638b74612de2f93419eeb0) Reviewed-on: https://gerrit.libreoffice.org/26941 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
Diffstat (limited to 'cui')
-rw-r--r--cui/source/options/optpath.cxx19
1 files changed, 9 insertions, 10 deletions
diff --git a/cui/source/options/optpath.cxx b/cui/source/options/optpath.cxx
index 2a52540dae83..7c2de67e7bb6 100644
--- a/cui/source/options/optpath.cxx
+++ b/cui/source/options/optpath.cxx
@@ -633,11 +633,12 @@ IMPL_LINK_NOARG_TYPED(SvxPathTabPage, PathHdl_Impl, Button*, void)
else
{
short nRet = xFolderPicker->execute();
- if ( ExecutableDialogResults::OK != nRet )
- return;
-
- OUString sFolder( xFolderPicker->getDirectory() );
- ChangeCurrentEntry( sFolder );
+ if (nRet == ExecutableDialogResults::OK)
+ {
+ OUString sFolder(xFolderPicker->getDirectory());
+ ChangeCurrentEntry(sFolder);
+ }
+ xFolderPicker.clear();
}
}
catch( Exception& )
@@ -721,19 +722,17 @@ IMPL_LINK_TYPED( SvxPathTabPage, HeaderEndDrag_Impl, HeaderBar*, pBar, void )
}
}
-
IMPL_LINK_TYPED( SvxPathTabPage, DialogClosedHdl, DialogClosedEvent*, pEvt, void )
{
- if ( RET_OK == pEvt->DialogResult )
+ assert(xFolderPicker.is() && "SvxPathTabPage::DialogClosedHdl(): no folder picker");
+ if (RET_OK == pEvt->DialogResult)
{
- DBG_ASSERT( xFolderPicker.is(), "SvxPathTabPage::DialogClosedHdl(): no folder picker" );
-
OUString sURL = xFolderPicker->getDirectory();
ChangeCurrentEntry( sURL );
}
+ xFolderPicker.clear();
}
-
void SvxPathTabPage::GetPathList(
sal_uInt16 _nPathHandle, OUString& _rInternalPath,
OUString& _rUserPath, OUString& _rWritablePath, bool& _rReadOnly )