GraphicalFunctions::imageMagickIdentify() should use last returned row
I experienced a problem with GraphicsMagick when retrieving the image size with GraphicalFunctions::imageMagickIdentify().
The command executed by the system is:
'/usr/bin/gm' identify '/path/to/my/pdf/file.pdf'
The result of the GraphicsMagick call is:
**** Warning: glyf overlaps cmap, truncating. **** Warning: glyf overlaps cmap, truncating. /path/to/my/pdf/file.pdf PDF 595x842+0+0 DirectClass 8-bit 1.4M 0.000u 0:01
My GraphicsMagick version is:
GraphicsMagick 1.3.16 2012-06-23 Q8 http://www.GraphicsMagick.org/
The problem is, that the first two lines are written to stdout, not stderr. This is obviously a GraphicsMagick issue but I'm wondering if we could implement a workaround by simply using the last line instead of the first line that is beeing returned?
[BUGFIX] Use last result line of identify command
In GraphicalFunctions::imageMagickIdentify() the last line returned by
the executed command will be used as result.
This prevents the system from using possible error messages printed
before the actual result for further processing.
Reviewed-by: Xavier Perseguers
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind