(This is also an issue for 6.x-2.x-dev, but you can only select one release)
On line 8 of media_mover/contrib/mm_s3/mm_s3.install, there's the following check:
if (extension_loaded('curl') && !@dl(PHP_SHLIB_SUFFIX == 'so' ? 'curl.so' : 'php_curl.dll')) { $has_curl = true; }
This causes a particularly nasty WSOD in PHP 5.3: dl() is deprecated, and in many installs, completely missing. The error suppression on dl() causes a silent WSOD with no errors anywhere.
I'm not sure why mm_s3 even calls dl(): shouldn't extension_loaded('curl') be sufficient? Attached are two patches (one for 6.x-1.x-dev and one for 6.x-2.x-dev) that removes the dl() call and rewrites the check to conform to Drupal coding standards.
Comment | File | Size | Author |
---|---|---|---|
#3 | mm_s3_6.x-1-dev.install.patch | 1.64 KB | RobinMofo |
#2 | mm_s3-php53-drupal-6--1.patch | 883 bytes | Mark Trapp |
#2 | mm_s3-php53-drupal-6--2.patch | 879 bytes | Mark Trapp |
mm_s3-php53-drupal-6--2.patch | 894 bytes | Mark Trapp | |
mm_s3-php53-drupal-6--1.patch | 898 bytes | Mark Trapp | |
Comments
Comment #1
Mark TrappUpdate to more accurate title. It's not actually removed, it's just disabled unless explicitly enabled except for certain SAPIs.
According to the Changelog, it was deprecated and disabled for stability issues, and the recommended workaround is to use extension loading directives instead of dynamically loading an extension at runtime: http://php.net/manual/en/function.dl.php
Comment #2
Mark TrappOne last comment, I swear. Now that dl() is removed, there's no need to perform logic on extension_loaded: it returns TRUE or FALSE. Rerolled patches.
Comment #3
RobinMofo CreditAttribution: RobinMofo commentedSorry I'm going to add my two cents and include the use of get_t() function as specified in the hook_requirements API.
Hopefully this can be added to DEV soonish as I didn't see your issue before I started investigating the cause!
Comment #4
arthurf CreditAttribution: arthurf commentedI committed a slightly different version of these patches. Please let me know if it works for you
Comment #5
mjvesper CreditAttribution: mjvesper commentedRunning PHP 5.3 and tried the Oct 20, 2010 Dev release. Still get a WSOD when saving S3 settings.
Comment #6
mjvesper CreditAttribution: mjvesper commentedGuess I should change the status?
Comment #7
arthurf CreditAttribution: arthurf commented@mjvesper can you provide the actual error you're getting?
Comment #8
mjvesper CreditAttribution: mjvesper commentedThere is no error reported. I fill out the S3 form and save then it fails silently with a WSOD with no errors anywhere as the OP described.
Comment #9
arthurf CreditAttribution: arthurf commentedDid you check your php error log?
Comment #10
mjvesper CreditAttribution: mjvesper commentedSorry, had to reinstall Media Mover and get a fresh message. This is from the Apache error log for the latest dev while saving the mm_s3 settings:
So not dl() I guess, but still a WSOD.
Comment #11
arthurf CreditAttribution: arthurf commented@mjvesper I removed the dl from the class check function. Feel free to give the dev version a try
Comment #12
mjvesper CreditAttribution: mjvesper commentedThanks arthurf. Looking forward to giving it a retry. This module has a lot of potential.