X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fmod_magickpp%2Ftrgt_magickpp.cpp;h=7532291a1c18fc8e1412da78565c8a717cd5beca;hb=818ef12383320c153e39d35ab75f289c60e59327;hp=0d8cc35e9479d9b7a4a94a7032f0fd031dc059cf;hpb=2a49ebd8450b7b8a99ded6f98b7fa2ccf0e8f956;p=synfig.git diff --git a/synfig-core/trunk/src/modules/mod_magickpp/trgt_magickpp.cpp b/synfig-core/trunk/src/modules/mod_magickpp/trgt_magickpp.cpp index 0d8cc35..7532291 100644 --- a/synfig-core/trunk/src/modules/mod_magickpp/trgt_magickpp.cpp +++ b/synfig-core/trunk/src/modules/mod_magickpp/trgt_magickpp.cpp @@ -93,20 +93,27 @@ magickpp_trgt::~magickpp_trgt() try { - // check whether this file format supports multiple-image files - Magick::Image image(*(images.begin())); - image.fileName(filename); - try + bool multiple_images = images.size() != 1; + bool can_adjoin = false; + + if (multiple_images) { - SetImageInfo(image.imageInfo(),Magick::MagickTrue,&exceptionInfo); - } - catch(Magick::Warning warning) { - synfig::warning("exception '%s'", warning.what()); + // check whether this file format supports multiple-image files + Magick::Image image(*(images.begin())); + image.fileName(filename); + try + { + SetImageInfo(image.imageInfo(),Magick::MagickTrue,&exceptionInfo); + can_adjoin = image.adjoin(); + } + catch(Magick::Warning warning) { + synfig::warning("exception '%s'", warning.what()); + } } // the file type is now in image.imageInfo()->magick and // image.adjoin() tells us whether we can write to a single file - if (image.adjoin()) + if (can_adjoin) { synfig::info("joining images"); unsigned int delay = round_to_int(100.0 / desc.get_frame_rate()); @@ -177,7 +184,7 @@ magickpp_trgt::~magickpp_trgt() // insertImages(&images, new_images); #endif } - else + else if (multiple_images) { // if we can't write multiple images to a file of this type, // include '%04d' in the filename, so the files will be numbered