X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fmod_imagemagick%2Fmptr_imagemagick.cpp;fp=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fmod_imagemagick%2Fmptr_imagemagick.cpp;h=2860c1f97434413f6e4689fce916294cff52aa4f;hb=4ba22fb51d97f1ecce04dcc5e40569a4354c1bae;hp=ebc35693354574818c401918e60f7abd95028491;hpb=22d5c8135bb2f41dca8f3ccd55f6cd70a007c12b;p=synfig.git diff --git a/synfig-core/trunk/src/modules/mod_imagemagick/mptr_imagemagick.cpp b/synfig-core/trunk/src/modules/mod_imagemagick/mptr_imagemagick.cpp index ebc3569..2860c1f 100644 --- a/synfig-core/trunk/src/modules/mod_imagemagick/mptr_imagemagick.cpp +++ b/synfig-core/trunk/src/modules/mod_imagemagick/mptr_imagemagick.cpp @@ -112,7 +112,7 @@ imagemagick_mptr::get_frame(synfig::Surface &surface,Time /*time*/, synfig::Prog pclose(file); string command; - + if(filename.find("psd")!=String::npos) command=strprintf("convert \"%s\" -flatten \"png32:%s\"\n",filename.c_str(),temp_file.c_str()); else @@ -126,11 +126,11 @@ imagemagick_mptr::get_frame(synfig::Surface &surface,Time /*time*/, synfig::Prog string output="png32:"+temp_file; pid_t pid = fork(); - + if (pid == -1) { return false; } - + if (pid == 0){ // Child process if(filename.find("psd")!=String::npos) @@ -203,9 +203,9 @@ imagemagick_mptr::get_frame(synfig::Surface &surface,Time /*time*/, synfig::Prog return true; #else - + #error This code contains tempfile and arbitrary shell command execution vulnerabilities - + if(file) pclose(file);