Hi,
I just migrated site to the new server, unfortunately the first what I saw was a WSOD. It took me two hours of debugging to find that it caused by missing PEAR and there are no errors because this module silence them:

function mailmime_check_requirements() {
  // Try including the files, then cleck for the classes.
  @include_once('Mail/mime.php');
  @include_once('Mail/mimeDecode.php');
  @include_once('Mail/mimePart.php');

Comments

pillarsdotnet’s picture

Status: Active » Closed (duplicate)

I'm rewriting MailMime to avoid the PEAR dependency. See #1333310: Rewrite and fork PEAR classes instead of subclassing.

GBurg’s picture

Status: Closed (duplicate) » Active

Hi,

I want to open this issue again. I was also moving a website from one server to another. We had a WSOD, and no idea what caused the problem. After several hours of debugging, we found out it was the mime module., as described by albert78. As this is issue is now opened since january 24th of 2012, and now it is the 27th of April 2013, I would like to have some fix. This messed up our schedule of moving to another server :(

Best regards,

Geert

salvis’s picture

Status: Active » Needs work

Hi Geert,

Now that you've analyzed the issue in depth is the perfect time for you to write the patch that implements the proper error handling.

Thanks in advance!

P.S. You didn't update the version number — I hope you're using the current release, or better yet, the -dev version.

GBurg’s picture

What about?

function mailmime_check_requirements() {
  // Try including the files, then cleck for the classes.
  include_once('Mail/mime.php');
  include_once('Mail/mimeDecode.php');
  include_once('Mail/mimePart.php');

Notice the removal of the @ symbols?
Anyway, we solved it by installing the PEAR module :)

salvis’s picture

Status: Needs work » Postponed (maintainer needs more info)

I don't think this would make much of a difference.

The approach that's documented in the comment looks pretty reasonable — we need to get a better understanding of how and why this fails, before we can do something about it.