From: phpbugs at localpin dot com
Operating system: Windows XP Home Edition
PHP version: 4.3.1
PHP Bug Type: Unknown/Other Function
Bug description: error_log inconsistent in adding newline to files
Description:
------------
There is an inconsistency whether error_log gives a newline or not when
sending output, only based upon whether the file is not named (message
type 0) or named explicitly (message type 3).
i.e. when doing "error_log($msg)" a newline is automatically appended, but
when doing "error_log($msg, 3, $myfile)" a newline is not automatically
appended.
e.g. error_log($msg) gives:
1. My msg
2. My msg
3. My msg
4. My msg
but error_log($msg, 3, $another_file) gives:
1. My msg 2. My msg 3. M
y msg 4. My msg
Since in both cases the output is to a file, it seems to me that this is
inconsistent. Either BOTH should give an automatic newline, or NEITHER.
One can even imagine the case where the filename for both is identical
(e.g. both use the file "error.log"), yet because you specify the name of
the file explicitly, you don't get a 'free' newline char.
Reproduce code:
---------------
var $counter = 1;
var $log_elsewhere = true;
var $msg_prefix = "This is test number: ";
var $dev_filename = "c:/Program Files/Apache
Group/Apache/logs/dev_error.log";$elsewhere_log_name =
while (true) {
$msg = $msg_prefix . $counter;
if ($log_elsewhere) {
error_log($fileline, 3, $dev_filename);
// The following line should not be necessary
error_log("\n", 3, $dev_filename);
}
else {
error_log($fileline);
}
$counter++;
}
Expected result:
----------------
Without the extra newline sending, I would like the output to be identical
in both cases.
--
Edit bug report at http://bugs.php.net/?id=24928&edit=1
--
Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=24928&r=trysnapshot4
Try a CVS snapshot (php5): http://bugs.php.net/fix.php?id=24928&r=trysnapshot5
Fixed in CVS: http://bugs.php.net/fix.php?id=24928&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=24928&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=24928&r=needtrace
Try newer version: http://bugs.php.net/fix.php?id=24928&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=24928&r=support
Expected behavior: http://bugs.php.net/fix.php?id=24928&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=24928&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=24928&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=24928&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=24928&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=24928&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=24928&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=24928&r=gnused