diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-07-05 10:16:51 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-07-05 10:17:22 +0100 |
commit | 3bbc0574d78d129359638b74612de2f93419eeb0 (patch) | |
tree | efe19c418d23254b19729c37f32bca796bd6c2b1 | |
parent | 7566851d653ec052e9b7baa98ec2a993328f84e4 (diff) |
Resolves: rhbz#1352835 path options doesn't promptly destroy folder picker
Change-Id: I5133f63fd92f384221fa2812c6e2a0e7f3b37ac1
-rw-r--r-- | cui/source/options/optpath.cxx | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/cui/source/options/optpath.cxx b/cui/source/options/optpath.cxx index 14fa4782f099..28fa70535f7c 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 ) |