|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 2015 PHP 5.4.43
+- Core:
+ . Fixed bug #69768 (escapeshell*() doesn't cater to !). (cmb)
++ . Fixed bug #69874 (Can't set empty additional_headers for mail()), regression
++ from fix to bug #68776. (Yasuo)
+
11 Jun 2015 PHP 5.4.42
- Core:
php_basename(tmp, strlen(tmp), NULL, 0,&f, &f_len TSRMLS_CC);
-- if (headers != NULL) {
++ if (headers != NULL && *headers) {
spprintf(&hdr, 0, "X-PHP-Originating-Script: %ld:%s\n%s", php_getuid(TSRMLS_C), f, headers);
} else {
spprintf(&hdr, 0, "X-PHP-Originating-Script: %ld:%s", php_getuid(TSRMLS_C), f);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not execute mail delivery program '%s'", sendmail_path);
#if PHP_SIGCHILD
if (sig_handler) {
-- signal(SIGCHLD, sig_handler);
++ signal(SIGCHLD, sig_handler);
}
#endif
MAIL_RET(0);
--- /dev/null
--- /dev/null
++--TEST--
++Bug #69874: Null addtional_headers does not send mail
++--INI--
++sendmail_path=tee mailBasic.out >/dev/null
++mail.add_x_header = On
++--SKIPIF--
++<?php
++if(substr(PHP_OS, 0, 3) == "WIN")
++ die("skip Won't run on Windows");
++?>
++--FILE--
++<?php
++/* Prototype : int mail(string to, string subject, string message [, string additional_headers [, string additional_parameters]])
++ * Description: Send an email message
++ * Source code: ext/standard/mail.c
++ * Alias to functions:
++ */
++
++echo "*** Testing mail() : send email without additional headers ***\n";
++
++// Initialise all required variables
++$to = 'user@company.com';
++$subject = 'Test Subject';
++$message = 'A Message';
++
++$outFile = "mailBasic.out";
++@unlink($outFile);
++
++var_dump( mail($to, $subject, $message, '') );
++echo file_get_contents($outFile);
++unlink($outFile);
++
++?>
++===DONE===
++--EXPECTF--
++*** Testing mail() : send email without additional headers ***
++bool(true)
++To: user@company.com
++Subject: Test Subject
++X-PHP-Originating-Script: %d:bug69874_2.php
++
++A Message
++===DONE===