diff options
| author | Julien Nabet <serval2412@yahoo.fr> | 2018-04-05 21:45:20 +0200 |
|---|---|---|
| committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-04-06 09:00:18 +0200 |
| commit | 23c82e1a377ea6fce65d71277ec59b3ca150b98a (patch) | |
| tree | dd5980f5aa0364323dd4ec797f3167c26122bf8d | |
| parent | ad8961511ad34e6159db092bde052a4fab4375c7 (diff) | |
tdf#115407: preselect sound file saved
To display the sound in the dropbox, the complete filename
(eg: file:///home/julien/lo/libreoffice/instdir/share/gallery/sounds/pluck.wav)
was compared with items of the sound list formed like this:
file:///home/julien/lo/libreoffice/instdir/program/../share/gallery/sounds/pluck.wav
See https://bugs.documentfoundation.org/show_bug.cgi?id=115407#c1
Since listbox displays only basename, let's just compare basenames
Change-Id: I5fb49990322423fa7818e5d6e1cafd828e3500ec
Reviewed-on: https://gerrit.libreoffice.org/52476
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
| -rw-r--r-- | sd/source/ui/animations/SlideTransitionPane.cxx | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sd/source/ui/animations/SlideTransitionPane.cxx b/sd/source/ui/animations/SlideTransitionPane.cxx index f47e611216af..f830ecc8c355 100644 --- a/sd/source/ui/animations/SlideTransitionPane.cxx +++ b/sd/source/ui/animations/SlideTransitionPane.cxx @@ -270,10 +270,11 @@ struct lcl_EqualsSoundFileName { // note: formerly this was a case insensitive search for all // platforms. It seems more sensible to do this platform-dependent + INetURLObject aURL(rStr); #if defined(_WIN32) - return maStr.equalsIgnoreAsciiCase( rStr ); + return maStr.equalsIgnoreAsciiCase( aURL.GetBase() ); #else - return maStr == rStr; + return maStr == aURL.GetBase(); #endif } @@ -286,9 +287,10 @@ bool lcl_findSoundInList( const ::std::vector< OUString > & rSoundList, const OUString & rFileName, ::std::vector< OUString >::size_type & rOutPosition ) { + INetURLObject aURL(rFileName); ::std::vector< OUString >::const_iterator aIt = ::std::find_if( rSoundList.begin(), rSoundList.end(), - lcl_EqualsSoundFileName( rFileName )); + lcl_EqualsSoundFileName( aURL.GetBase())); if( aIt != rSoundList.end()) { rOutPosition = ::std::distance( rSoundList.begin(), aIt ); |
