[Libreoffice-commits] core.git: filter/source

Laurent Balland-Poirier laurent.balland-poirier at laposte.net
Tue Nov 12 05:57:16 PST 2013


 filter/source/flash/swffilter.cxx |   10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

New commits:
commit 2cf96ae334491733a2bdbeb003da6e49df19cc9f
Author: Laurent Balland-Poirier <laurent.balland-poirier at laposte.net>
Date:   Wed Nov 6 17:57:09 2013 +0100

    Resolves: fdo#71309 Export SWF with Multiple files crashes
    
    In case of unamed file, creation of sPresentationName crash.
    This patch forces creation of empty name
    
    Change-Id: I1b5319eb945f1959f2ad3c703365539508521861
    Reviewed-on: https://gerrit.libreoffice.org/6598
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/filter/source/flash/swffilter.cxx b/filter/source/flash/swffilter.cxx
index e08667e..4d0ace8 100644
--- a/filter/source/flash/swffilter.cxx
+++ b/filter/source/flash/swffilter.cxx
@@ -285,16 +285,20 @@ sal_Bool FlashExportFilter::ExportAsMultipleFiles(const Sequence< PropertyValue
 
     // AS: sPath is the parent directory, where everything else exists (like the sxi,
     //  the -swf-files folder, the -audio files, etc.
-    int lastslash = sOriginalPath.lastIndexOf('/');
+    sal_Int32 lastslash = sOriginalPath.lastIndexOf('/');
     OUString sPath( sOriginalPath.copy(0, lastslash) );
 
     OUString sPresentation(xStorable->getLocation());
 
     lastslash = sPresentation.lastIndexOf('/') + 1;
-    int lastdot = sPresentation.lastIndexOf('.');
+    sal_Int32 lastdot = sPresentation.lastIndexOf('.');
 
     // AS: The name of the presentation, without 3 character extension.
-    OUString sPresentationName = sPresentation.copy(lastslash, lastdot - lastslash);
+    OUString sPresentationName;
+    if (lastdot < 0)  // fdo#71309 in case file has no name
+        sPresentationName = sPresentation.copy(lastslash);
+    else
+        sPresentationName = sPresentation.copy(lastslash, lastdot - lastslash);
 
     OUString fullpath, swfdirpath, backgroundfilename, objectsfilename;
 


More information about the Libreoffice-commits mailing list