Last modified: 2011-02-05 22:12:32 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T8941, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 6941 - Confirmation Email Generates Misleading Error when Time Zone is not configured
Confirmation Email Generates Misleading Error when Time Zone is not configured
Status: RESOLVED FIXED
Product: MediaWiki
Classification: Unclassified
Special pages (Other open bugs)
unspecified
All All
: Normal normal with 1 vote (vote)
: ---
Assigned To: Nobody - You can work on this!
:
Depends on: 7715
Blocks:
  Show dependency treegraph
 
Reported: 2006-08-07 13:49 UTC by William Leader
Modified: 2011-02-05 22:12 UTC (History)
2 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Attachments

Description William Leader 2006-08-07 13:49:27 UTC
If the date.timezone environment variable is not set in php.ini then when
sending a confirmation email, the following error can be generated: "Could not
send confirmation mail. Check address for invalid characters." The email message
is still sent.

This is because the php mail() fuction will return a warning when the
date.timezone environment variable is not set. The UserMailer Function in
UserMailer.php returns this non-empty warning string. In User.php the function
sendMail incorrectly interprets this non-empty string as a failure. This then
propagates up to the function sendConfirmationMail in User.php and finally back
to function showRequestForm in SpecialConfirmemail.php, where the message
confirmemail_sendfailed or "Could not send confirmation mail. Check address for
invalid characters." is displayed.

Suggestions:
Change the mailing code to recognize this warning and display an appropriate
warning. Add a check to the configuration code (config/index.php) to check for
the existence of the date.timezone environment variable.
Comment 1 Mark A. Hershberger 2011-02-05 22:12:32 UTC
Since PHP requires the timezone to be set now, this should be considered fixed.

Note You need to log in before you can comment on or make changes to this bug.


Navigation
Links