X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fmod_imagemagick%2Fmptr_imagemagick.cpp;h=2860c1f97434413f6e4689fce916294cff52aa4f;hb=4ba22fb51d97f1ecce04dcc5e40569a4354c1bae;hp=921557f7a242aa01581b0406bfd865116722d54a;hpb=d04c74c8f5a45493895afdaba9b39772401fbf39;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 921557f..2860c1f 100644 --- a/synfig-core/trunk/src/modules/mod_imagemagick/mptr_imagemagick.cpp +++ b/synfig-core/trunk/src/modules/mod_imagemagick/mptr_imagemagick.cpp @@ -6,6 +6,7 @@ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley +** Copyright (c) 2007 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -111,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 @@ -125,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) @@ -202,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);