Opened 10 years ago

Last modified 10 years ago

#44728 new defect

ImageMagick @6.8.9-6_0+x11 fails to process WordPress uploads properly

Reported by: billc108 Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.3.1
Keywords: Cc:
Port: ImageMagick

Description

The most recent version of ImageMagick (6.8.9-6_0+x11) fails to process WordPress image uploads properly. I have not tested with any other systems.

Setup: Mac 10.9.4, Apache 2.2.27, PHP 5.5.15 MySQL 5.5.38 PHP Shortcode (<?)is OFF. Also occurs on a system with Mac 10.7.5, Apache 2.2.27, PHP 5.3.28, MySQL 5.1.72 with PHP Shortcode ON.

Expected behavior: When an image is uploaded via WordPress, ImageMagick is called to create one or more pre-defined smaller versions, for example a 150x150 px thumbnail. All images are then visible and available via the 'Media Library' in WordPress admin, so they can be included in various posts.

Actual behavior: The original and smaller versions appear to be created correctly as verified by direct inspection in the uploads repository on the server. The Media Library displays the image name but does not display the image itself and any attempts to insert the image into a post will go through the proper steps but the image does not display.

Workaround: Reverting to ImageMagick @6.8.9-1_0+x11 allows images to upload properly.

I have also reported this on WordPress <http://wordpress.org/support/topic/imagemagick-689-6_0x11-fails-to-process-wordpress-images-properly?replies=1#post-5921323>, but other software which uses ImageMagick may be experiencing similar problems.

Change History (4)

comment:1 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Keywords: imagemagick removed
Owner: changed from macports-tickets@… to ryandesign@…
Port: ImageMagick added

I'm not sure why that's happening. I updated ImageMagick to 6.8.9-7 in r124261; you could try that and see if it helps. Previously, when I updated the port to 6.8.9-6 in r123732, I also enabled support for openexr, jbig and jpeg2. I didn't think that would cause any problems, but if updating to 6.8.9-7 doesn't help, you could try editing the Portfile to disable those again. Let me know if you find something that works.

comment:2 in reply to:  1 ; Changed 10 years ago by billc108

Replying to ryandesign@…:

I'm not sure why that's happening. I updated ImageMagick to 6.8.9-7 in r124261; you could try that and see if it helps. Previously, when I updated the port to 6.8.9-6 in r123732, I also enabled support for openexr, jbig and jpeg2. I didn't think that would cause any problems, but if updating to 6.8.9-7 doesn't help, you could try editing the Portfile to disable those again. Let me know if you find something that works.

I removed the references to openexr and jbig. No help. I don't see anything for 'jpeg2' specifically. Is it openjp2 that you're referring to?

Thanks.

Version 0, edited 10 years ago by billc108 (next)

comment:3 in reply to:  2 ; Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to billc_lists@…:

I then removed the references to openexr and jbig. No help. I don't see anything for 'jpeg2' specifically. Is it openjp2 that you're referring to?

Yes, the --with-openjp2 configure argument is the one that causes ImageMagick to enable its jpeg 2000 functionality using the openjpeg library. To try without jpeg 2000 functionality, you would edit the Portfile and replace --with-openjp2 with --without-openjp2 and rebuild; similarly for the --with-jbig and --with-openexr flags.

When attempting to re-run the resizing using a plugin called Regenerate Thumbnails, the UI gave errors of the form:

function (){if(h){var d=h.length;!function f(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),b?e=h.length:c&&(g=d,j(c))}return this}

That's not an error message; that's minified/uglified JavaScript code. Specifically, it's part of the jQuery library version 1.11.1, which is included in WordPress. Why you're seeing it, though, I cannot speculate; I don't know much of the inner workings of WordPress. I don't know how to help you further with this problem, other than if it is a bug in ImageMagick and the ImageMagick developers fix the problem and release a new version, I can update the port to that version.

comment:4 in reply to:  3 Changed 10 years ago by billc108

Replying to ryandesign@…:

Replying to billc_lists@…:

I then removed the references to openexr and jbig. No help. I don't see anything for 'jpeg2' specifically. Is it openjp2 that you're referring to?

Yes, the --with-openjp2 configure argument is the one that causes ImageMagick to enable its jpeg 2000 functionality using the openjpeg library. To try without jpeg 2000 functionality, you would edit the Portfile and replace --with-openjp2 with --without-openjp2 and rebuild; similarly for the --with-jbig and --with-openexr flags.

When attempting to re-run the resizing using a plugin called Regenerate Thumbnails, the UI gave errors of the form:

function (){if(h){var d=h.length;!function f(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),b?e=h.length:c&&(g=d,j(c))}return this}

That's not an error message; that's minified/uglified JavaScript code. Specifically, it's part of the jQuery library version 1.11.1, which is included in WordPress. Why you're seeing it, though, I cannot speculate; I don't know much of the inner workings of WordPress. I don't know how to help you further with this problem, other than if it is a bug in ImageMagick and the ImageMagick developers fix the problem and release a new version, I can update the port to that version.

Using --without-jbig --without-openexr and --without-openjp2 made no difference.

I'll hold at the earlier version and see if I can get some traction with the ImageMagick folks. I haven't heard any feedback from my WordPress report yet.

Note: See TracTickets for help on using tickets.