summaryrefslogtreecommitdiffstats
path: root/src/extension/implementation/script.cpp
diff options
context:
space:
mode:
authorNicolas Dufour <nicoduf@yahoo.fr>2010-10-06 18:58:55 +0000
committerJazzyNico <nicoduf@yahoo.fr>2010-10-06 18:58:55 +0000
commit380c3467b2136e6bbc0b23d05829a75d858a3ffe (patch)
tree11d999cb67c9dbf37f8d80b3a3faf1cd5e8f5f66 /src/extension/implementation/script.cpp
parentGerman translation Update (diff)
downloadinkscape-380c3467b2136e6bbc0b23d05829a75d858a3ffe.tar.gz
inkscape-380c3467b2136e6bbc0b23d05829a75d858a3ffe.zip
Extensions. Fix for Bug #652943 (Aborted output extensions create an empty file).
Fixed bugs: - https://launchpad.net/bugs/652943 (bzr r9815)
Diffstat (limited to 'src/extension/implementation/script.cpp')
-rw-r--r--src/extension/implementation/script.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/extension/implementation/script.cpp b/src/extension/implementation/script.cpp
index e075feb91..9a461ab2d 100644
--- a/src/extension/implementation/script.cpp
+++ b/src/extension/implementation/script.cpp
@@ -602,10 +602,14 @@ void Script::save(Inkscape::Extension::Output *module,
file_listener fileout;
- execute(command, params, tempfilename_in, fileout);
+ int data_read = execute(command, params, tempfilename_in, fileout);
+
+ bool success = false;
- std::string lfilename = Glib::filename_from_utf8(filenameArg);
- bool success = fileout.toFile(lfilename);
+ if (data_read > 0) {
+ std::string lfilename = Glib::filename_from_utf8(filenameArg);
+ success = fileout.toFile(lfilename);
+ }
// make sure we don't leak file descriptors from g_file_open_tmp
close(tempfd_in);