Support "Seam Carving"
Seems to work!
Alright, I will have to give it a shot in a few. Been kinda busy, sorry.
You could create a stuct that has a version member in it and when you check for a flag you could check against it's version. If it's too low you know to use the default value.
That change does seem to make this work. Why does GM use signal handlers? I suppose making some sort of InitializeMagickEx(InitInfo* initInfo) might be in order?
I've manually compiled GM from the source archive and it's still doing the same thing, but gm version is reporting GraphicsMagick 1.3.34 2019-12-24 Q8 http://www.GraphicsMagick.org/ now.
The header in /usr/lib/GraphicsMagick/magick/version.h seems to say 1.3.34. #define MagickPackageName "GraphicsMagick" #define MagickCopyright "Copyright (C) 2002-2019 GraphicsMagick Group.\nAdditional copyrights and licenses apply to this software.\nSee http://www.GraphicsMagick.org/www/Copyright.html for> #define MagickLibVersion 0x232002 #define MagickLibVersionText "1.3.34" #define MagickLibVersionNumber 23,20,2 #define MagickChangeDate "20191224" #define MagickReleaseDate "2019-12-24" So weird...
Well, I ran gm version. There is always a chance that IM might be doing something screwy. Is there any way to check what signal handlers are in use?