#41995 [NEW]: ip2long() sometimes return wrong value

2007-07-14 Thread pigmey_avi at gorodok dot net
From: pigmey_avi at gorodok dot net
Operating system: 
PHP version:  4.4.7
PHP Bug Type: Network related
Bug description:  ip2long() sometimes return wrong value

Description:

When ip2long() encountered triplet that can be represent as octal number,
the function represent it as octal.

For instance, when ip is '10.0.0.011', the last triplet will be readed as
9, becouse 11 in 8 base is 9.

So, sometimes, ip2long() returns wrong value.


-- 
Edit bug report at http://bugs.php.net/?id=41995edit=1
-- 
Try a CVS snapshot (PHP 4.4): 
http://bugs.php.net/fix.php?id=41995r=trysnapshot44
Try a CVS snapshot (PHP 5.2): 
http://bugs.php.net/fix.php?id=41995r=trysnapshot52
Try a CVS snapshot (PHP 6.0): 
http://bugs.php.net/fix.php?id=41995r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=41995r=fixedcvs
Fixed in release: 
http://bugs.php.net/fix.php?id=41995r=alreadyfixed
Need backtrace:   http://bugs.php.net/fix.php?id=41995r=needtrace
Need Reproduce Script:http://bugs.php.net/fix.php?id=41995r=needscript
Try newer version:http://bugs.php.net/fix.php?id=41995r=oldversion
Not developer issue:  http://bugs.php.net/fix.php?id=41995r=support
Expected behavior:http://bugs.php.net/fix.php?id=41995r=notwrong
Not enough info:  
http://bugs.php.net/fix.php?id=41995r=notenoughinfo
Submitted twice:  
http://bugs.php.net/fix.php?id=41995r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=41995r=globals
PHP 3 support discontinued:   http://bugs.php.net/fix.php?id=41995r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=41995r=dst
IIS Stability:http://bugs.php.net/fix.php?id=41995r=isapi
Install GNU Sed:  http://bugs.php.net/fix.php?id=41995r=gnused
Floating point limitations:   http://bugs.php.net/fix.php?id=41995r=float
No Zend Extensions:   http://bugs.php.net/fix.php?id=41995r=nozend
MySQL Configuration Error:http://bugs.php.net/fix.php?id=41995r=mysqlcfg


#41982 [Opn-Fbk]: cookie fails to set

2007-07-14 Thread jani
 ID:   41982
 Updated by:   [EMAIL PROTECTED]
 Reported By:  alex__rider at hotmail dot com
-Status:   Open
+Status:   Feedback
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

Check the headers PHP sends for that page.(with e.g. Firebug)


Previous Comments:


[2007-07-13 21:27:09] alex__rider at hotmail dot com

The cookie is never set even with page reloads, my browser is set to
allow cookies, and there is no cookie set when I look at set cookies. I
have tried reinstalling both php and apache with no luck.



[2007-07-12 20:36:35] [EMAIL PROTECTED]

Do you mean it never get set even if you reload the page?



[2007-07-12 20:30:53] alex__rider at hotmail dot com

Description:

When trying to set a cookie in PHP under Apache2 / winXP, the cookie is
not set.

Reproduce code:
---
?php
setcookie('test','some text', time()+360);
echo 'cookie setbr';
if (isset($_COOKIE['test']))
{
echo 'cookie retrieved';
}
else
{
echo 'cookie failed';
}
?

Expected result:

The out put should read 'cookie retrieved' if the cookie was set

Actual result:
--
the output I get is the failed message





-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1


#41193 [Opn-Asn]: relative paths affecting script performance (compared to 5.1.x)

2007-07-14 Thread jani
 ID:   41193
 Updated by:   [EMAIL PROTECTED]
 Reported By:  mauroi at digbang dot com
-Status:   Open
+Status:   Assigned
 Bug Type: Performance problem
 Operating System: Win32
-PHP Version:  5.2.2
+PHP Version:  5.2.3
-Assigned To:  
+Assigned To:  dmitry
 New Comment:

Dmitry, please check this out. 


Previous Comments:


[2007-06-15 02:49:54] [EMAIL PROTECTED]

Just to add to this report - it looks very much like it's impacting
PHP-GTK (CLI only) Windows users too.

The base demo script in the PHP-GTK distro is reportedly 'twice as
slow' under 5.2.3 as it is under 5.1.6 in the same environment with the
same GTK+ libraries in tow.

The base demo script includes a long list of class files via relative
includes. The relevant bit of code goes:

protected function load_demos()
{
$files = glob(dirname(__FILE__).'/components/*.php');
foreach ($files as $id = $file) {
$GLOBALS['class'] = null;
if (basename($file) != basename(__FILE__)) {
if ([EMAIL PROTECTED]($file)) {
continue;
}
etc
(see
http://cvs.php.net/viewvc.cgi/php-gtk/demos/phpgtk2-demo.php?content-type=text%2Fplainview=co
for the murky details)

The performance difference is also reported as 'visibly noticeable'
between relative and hard-coded paths under 5.2.3, although that's a
less direct comparison.

Ping me if you think I can help with any donkeywork, this one's fairly
major for us and may hold up our 'surprise release', given that the demo
scripts number rather less than the number of includes you could expect
in a RL application.

- Steph



[2007-05-09 15:47:49] mauroi at digbang dot com

Thanks Mark... The original example comes from a real life application,
but yours is far much better. Hope someone will take a look at it now
it's simpler.

Regards,
Mauro.



[2007-05-09 15:36:37] mark at markwest dot me dot uk

I can reproduce what I believe to be the same issue too.

A very simple test case to highlight this issue is 

?php
for ($i = 0; $i  5000; $i++) {
if (is_readable('test.txt')) {
// dummy - do nothing!
}
}
?

Sample results, measured using xdebug, are as follows

is_readable with non-existent file
5.1.6 5000 calls to is_readable taking 166ms
5.2.2 5000 calls to is_readable taking 1511ms

is_readable with existing file
5.1.6 5000 calls to is_readable taking 135ms
5.2.2 5000 calls to is_readable taking 151ms

When the file isn't present php 5.2.x takes significantly longer that
in previous releases.

-Mark



[2007-04-25 21:56:14] mauroi at digbang dot com

Description:

First of all, I couldn't reproduce this on Linux. Maybe because it
doesn't exist, or maybe because of worse perfomance on filesystem
operations on Windows.
We've found a performance degradation between PHP5.1.6 and PHP5.2.x
(also checked with PHP5.2.2rc1) when including a file with a relative
path. It gets notorious if using include_path and it has a big number of
directories.
In the provided zip file you'll find 8 directories. Only one of them
contains the file that will be required by the main script. So,
script.php  script1.php show the problem. script.php only requires the
file one time, and even in that case you'll see the difference.
script1.php iterates including a non-existant file (that's why errors ar
supressed) and the execution time is twice as big.
At first glance this could look as a bug with less importance, but any
framework that uses __autoload  include_path with some sort of
frequency, will be slower on PHP5.2 on Windows. Also, any site using MVC
(not even using __autoload) and relative paths could be affected.

Thank you very much.

Reproduce code:
---
http://webmail.digbang.com/include_performance.zip

# one inclusion
php -n script.php

# multiple inclusions
php -n script1.php


Expected result:

Same or better performance on PHP5.2.x than in PHP5.1.6






-- 
Edit this bug report at http://bugs.php.net/?id=41193edit=1


#40933 [Opn-Fbk]: Streams blocking under concurrent access

2007-07-14 Thread jani
 ID:   40933
 Updated by:   [EMAIL PROTECTED]
 Reported By:  loony at loonybin dot org
-Status:   Open
+Status:   Feedback
 Bug Type: Streams related
 Operating System: Linux 2.6.20 - FC6
 PHP Version:  5.2.1
 New Comment:

Does that script work in any PHP version? I also get some E_NOTICE for
that ob_flush(); call..


Previous Comments:


[2007-07-13 02:27:36] loony at loonybin dot org

Tried php5.2-200707122230 and the behavior does not seem to have
changed.



[2007-07-12 21:16:39] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows (zip):
 
  http://snaps.php.net/win32/php5.2-win32-latest.zip

For Windows (installer):

  http://snaps.php.net/win32/php5.2-win32-installer-latest.msi





[2007-03-28 04:32:29] loony at loonybin dot org

Description:

Tail for php. Open the file, output the current content... then wait
for more - if no more content arrives, then return number of bytes read
after a while... 

Running 1 execution of this code works fine. Executing it from two
browsers at the same time blocks. 

Happens on Fedora Core 6 default 5.1.6 and also after upgrading to
5.2.1

Reproduce code:
---
http://ns1.loonybin.org/php/tail.tar.gz - 45 lines

Expected result:

See content of file printed immediately. If any content is appended to
the file within 15 seconds from request start, that content should be
printed as well. 

This works with 1 execution of the code. Should yield same result if
executed multiple times. 

Actual result:
--
1 run of the code works. Multiple executions however block on semop /
epoll_wait. 

semop(4358158, 0x15470c, 1)   = 0 2.194313
epoll_wait(16, {{EPOLLIN, {u32=2156798632, u64=13801426109869204136}}},
2, -1) = 1 3.738842

As soon as the first execution of the code has ended, the second will
run as expected and finish successfully (as long as max_execution_time
is not reached). 





-- 
Edit this bug report at http://bugs.php.net/?id=40933edit=1


#41713 [Opn-Asn]: Persistent memory consumption since 5.2

2007-07-14 Thread jani
 ID:   41713
 Updated by:   [EMAIL PROTECTED]
 Reported By:  mplomer at gmx dot de
-Status:   Open
+Status:   Assigned
 Bug Type: Performance problem
 Operating System: win32 only
 PHP Version:  5.2CVS-2007-06-26
-Assigned To:  
+Assigned To:  dmitry
 New Comment:

Dmitry, please check this out.


Previous Comments:


[2007-07-13 19:57:08] idvis at seznam dot cz

I have very similar problem - I use Apache 2.2.3 with isapi php 5.2.1
on Win2000Pro. After executing a few more complicated php scripts,
httpd.exe consumes abnormal memory size - up to 300MB.



[2007-07-11 08:43:55] mplomer at gmx dot de

I tested with PHP 5.2.0 now, and I can reproduce the described
behaviour from [30 Jun 10:19am UTC] too. Only when I am testing with PHP
5.1.6, I can't reproduce it.
But I agree with you, that this points at the new memory management on
win32.



[2007-07-10 23:39:09] spamtrap at psychoticwolf dot net

I see this with PHP 5.2.1 - 5.2.3 (mod_php5 with Apache 2.0.59 and
2.2.4 on WinXP and Win2003). I did some regression testing and it seems
to have started between 5.2.0 and 5.2.1 which points at the new memory
management on win32. Memload was normal under 5.2.0.  After awhile,
Apache consumes as previously reported, 300-600mb (usually around 330mb
+ 6-700mb virtual), and, curiously, PHP thows a Fatal Error that its
exceeded its memory limit for that script, even though it hasn't, as the
script doesn't use more than about 300k. (Only seen this last part once,
so far, so that might be a fluke.)



[2007-07-09 13:48:22] mplomer at gmx dot de

Does somebody have any ideas to track this down?
Are there any PHP core developers with a windows-test-environment?
Aren't there any PHP developers who have the problem, that Apache/PHP
eats up all RAM after some hours of developing and testing bigger
PHP-projects?



[2007-06-30 11:32:59] mplomer at gmx dot de

Another developer tested this on his own machine now, with the same
Apache/PHP environment, and could affirm this behavior. The memory usage
values are respectively 0,1-0,3 MB different, but the principle is the
same. So the behavior seems not to be system dependent.



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41713

-- 
Edit this bug report at http://bugs.php.net/?id=41713edit=1


#41489 [Opn-Asn]: stream_select does not work on ssl stream_socket_server (works in 5.2.1!) on 64b

2007-07-14 Thread jani
 ID:   41489
 Updated by:   [EMAIL PROTECTED]
 Reported By:  n dot escuder at intra-links dot com
-Status:   Open
+Status:   Assigned
 Bug Type: Streams related
 Operating System: Linux 2.6
 PHP Version:  5.2.3
 Assigned To:  iliaa


Previous Comments:


[2007-07-13 21:29:56] n dot escuder at intra-links dot com

I try without any certificat and the same problem appear.

I try launch server.php with php-5.2-dev and client with php-5.2.1 and
the same problem appear.

So i decide to lookup into the code. A strange result append i try to
explain :

code in ext/standard/streamsfuncs.c :

retval = php_select(max_fd+1, rfds, wfds, efds, tv_p);
printf(%d %d\n, max_fd, retval );
if (retval == -1) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, unable to select
[%d]: %s (max_fd=%d),
errno, strerror(errno), max_fd);
RETURN_FALSE;
}
printf(%d\n, retval );
if (r_array != NULL) stream_array_from_fd_set(r_array, rfds
TSRMLS_CC);
if (w_array != NULL) stream_array_from_fd_set(w_array, wfds
TSRMLS_CC);
if (e_array != NULL) stream_array_from_fd_set(e_array, efds
TSRMLS_CC);
printf(%d\n, retval );
RETURN_LONG(retval);


As you can see i had three printf for debug :o)

I add an var_dump to the result of stream_select in server.php
The strange result i have after i launch client.php is :

3 1 - First printf with max_fd and retval
1 - Second printf with retval
0 - Third printf with retval but the value as changed 
int(0) - The var_dump in server.php

So the value change between the second and third printf ;o)

I hope this help



[2007-07-12 20:42:12] [EMAIL PROTECTED]

I just realized that of course I don't have this
cert/www/conf/ssl/server.pem here. But it can't be the cause..can it?




[2007-07-10 14:49:09] n dot escuder at intra-links dot com

I just retry with :

./configure --prefix=/usr --sysconfdir=/etc --disable-all
--enable-sockets --with-openssl --disable-cgi   

and the same append.



[2007-07-10 14:13:34] [EMAIL PROTECTED]

Did you try cutting the configure options to the bare minimum you need
for the test scripts to run and did you use --disable-all? If not, do
this.



[2007-07-10 12:36:36] n dot escuder at intra-links dot com

I did it with php5.2-200707101030

I ran with -n and the problems stay. ACCEPT never arrive.



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41489

-- 
Edit this bug report at http://bugs.php.net/?id=41489edit=1


#40757 [Opn-Asn]: get_object_vars get nothing in child class

2007-07-14 Thread jani
 ID:   40757
 Updated by:   [EMAIL PROTECTED]
 Reported By:  nrspark at 163 dot com
-Status:   Open
+Status:   Assigned
 Bug Type: Class/Object related
 Operating System: Windows XP
 PHP Version:  5.2.1
-Assigned To:  
+Assigned To:  dmitry
 New Comment:

Dmitry, check this out please.


Previous Comments:


[2007-06-25 14:07:41] dennis at d23 dot nl

I have to agree that something seems bugged here.

Consider the following example:
---
?php

class Base {
private $baseA   = 'BaseA';

function __construct() {
echo __METHOD__.' : '. print_r(get_object_vars($this), 
true).\n;
echo 'Direct base : '.$this-baseA.\n;
echo 'Direct child : '.$this-childA.\n;
}
}

class Child extends Base{
private $childA = 'ChildA';

function __construct() {
parent::__construct();
echo __METHOD__.' : '.print_r(get_object_vars($this), 
true).\n;
   }
}

$child = new Child();

?
---
Expected Result:

Base::__construct : Array
(
[baseA] = BaseA
)

Direct base : BaseA
br /
bFatal error/b:  Cannot access private property Child::$childA in
bPHPDocument7/b on line b9/bbr /
---
Actual Result:

Base::__construct : Array
(
[childA] = ChildA
)

Direct base : BaseA
br /
bFatal error/b:  Cannot access private property Child::$childA in
bPHPDocument7/b on line b9/bbr /
===

It dies properly on $childA reference in the parent class, but
interestingly get_object_vars() has no issue with retrieving them.
In other words get_object_vars() does not seem to respect the scope in
which it was called.

Following test
http://lxr.php.net/source/ZendEngine2/tests/bug27798.phpt
misses the situation because it overrides the private property.



[2007-03-13 13:15:38] nrspark at 163 dot com

code 1: use get_object_vars
1I would be very surprised to be able to access private properties of
1Base in the context of Child.

code 2: direct access
2Surely Base class can access it's own private properties.
2The method belongs to the Base and is executed in it's scope.

$child=new Child();
$child-getFields(new Base());
what is the context of the method? base or child?

the result direct access and get_object_vars must be the same.

it is a bug that the get_object_vars function do not check the method
belongs to, but just check the object class call the method.



[2007-03-13 11:38:52] [EMAIL PROTECTED]

but it works expect if the method change to this
function getFields($obj){ return array('p1'=$obj-p1); }

Surely Base class can access it's own private properties.
The method belongs to the Base and is executed in it's scope.



[2007-03-09 13:06:23] nrspark at 163 dot com

but it works expect if the method change to this

function getFields($obj){
  return array('p1'=$obj-p1);
}

and it work expect in java using reflection

think about: Liskov Substitution Principle

i thing this is the implemention bug of get_object_vars



[2007-03-09 10:14:42] [EMAIL PROTECTED]

I would be very surprised to be able to access private properties of
Base in the context of Child.
What you see is expected.



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/40757

-- 
Edit this bug report at http://bugs.php.net/?id=40757edit=1


#39130 [Asn-Fbk]: Compile failure with the compiler of VC++ 2005

2007-07-14 Thread jani
 ID:   39130
 Updated by:   [EMAIL PROTECTED]
 Reported By:  ben dot yan at msn dot com
-Status:   Assigned
+Status:   Feedback
 Bug Type: Compile Failure
 Operating System: Windows
 PHP Version:  5.2.2
 Assigned To:  wez
 New Comment:

Please try using this CVS snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows (zip):
 
  http://snaps.php.net/win32/php5.2-win32-latest.zip

For Windows (installer):

  http://snaps.php.net/win32/php5.2-win32-installer-latest.msi




Previous Comments:


[2007-06-15 12:47:02] grotaiche at hotmail dot com

Yeah, I have the same problem too. I recompile my extension with VS
2005 for every PHP release and I have had the problem for a while.
Commenting the #define _USE_32BIT_TIME_T 1 line is not very difficult
but it is a by-pass ; a more viable solution would be appreciated :)
Thanks !



[2007-06-02 10:52:53] cxd at webpan dot com

Trying to compile a module for PHP 5.2.3 with VC++ 2005 SP1 I also get
tons of error like:

error C2466: cannot allocate an array of constant size 0

This module (eAccelerator for Windows) compiled fine with VC++ 2005 SP1
and PHP 5.2.2.

The following might explain the cause of the problem (not sure?) that
was (re)introduced with 523( again my module compiles great with PHP 522
 VC++ 2005):

--
deprecated default to int rule: 

Pre-standard C++ (and all C variants predating C99), use the default
to int rule when
declarations of functions and variables do not contain an explicit
datatype. 
This behavior is maintained in Visual C++ 6.0 as the following
declarations show: 


const x=0; //implicit int
static num; // implicit int
myfunc(void *ptr); //implicit return type int

In Visual Studio 2005, you have to specify the datatype explicitly:
const int x=0; static int num; int myfunc(void *ptr); 

Hope this helps...



[2007-05-19 18:24:06] [EMAIL PROTECTED]

Wez, you never got to the company laptop..? Or was it stolen? :D



[2007-05-16 04:04:44] ben dot yan at msn dot com

I tried PHP5.2.2, but the problem is still there. :(



[2007-04-14 05:00:20] dmain at themainfamily dot net

If I move this change, then the compiler errors are gone.  I still have
another separate issue with compilation though.


This would induce the compile error. and if 

#include stdio.h

BEHIND the 

#ifdef ZEND_WIN32
# include zend_config.w32.h
# define ZEND_PATHS_SEPARATOR   ';'
#elif defined(XXX)
...
#endif

,it will be ok.



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/39130

-- 
Edit this bug report at http://bugs.php.net/?id=39130edit=1


#40509 [Asn]: key() function changed behaviour if global array is used within function

2007-07-14 Thread jani
 ID:   40509
 Updated by:   [EMAIL PROTECTED]
 Reported By:  alex dot killing at gmx dot de
 Status:   Assigned
 Bug Type: Arrays related
 Operating System: MaxOsX/RedHat
 PHP Version:  5.2.1
 Assigned To:  dmitry
 New Comment:

See also bug #41372



Previous Comments:


[2007-03-19 19:59:03] [EMAIL PROTECTED]

Tested this example against the 5.2.1 zipfile from php.net on WinXP and
the problem does occur.

Also tested it against the 5.2 snapshot (php5.2-win32-200703191630.zip)
from php.net, on WinXP, and the problem seems to still exist.



[2007-03-06 13:19:33] [EMAIL PROTECTED]

see also http://bugs.php.net/bug.php?id=40705



[2007-02-16 15:24:36] alex dot killing at gmx dot de

Description:

If a global array is assigned to a local variable as in the example,
and the local variable is iterated afterwards, the key() function
changed the behaviour in the global scope with PHP 5.2.1.

Reproduce code:
---
?php

function foo()
{
global $arr;

$c = $arr[v];
foreach ($c as $v) {}
}

$arr[v] = array(a);

echo -.key($arr[v]).-;// prints 0
foo();
echo br/-.key($arr[v]).-;   // prints  since 5.2.1 (0 on all
prior versions)


?

Expected result:

-0-
-0-

Actual result:
--
-0-
--





-- 
Edit this bug report at http://bugs.php.net/?id=40509edit=1


#41372 [Opn-Asn]: Internal pointer of source array resets during array copying

2007-07-14 Thread jani
 ID:   41372
 Updated by:   [EMAIL PROTECTED]
 Reported By:  forjest at gmail dot com
-Status:   Open
+Status:   Assigned
 Bug Type: Arrays related
 Operating System: WinXP, Linux
 PHP Version:  5.2.1, 4.4.7
-Assigned To:  
+Assigned To:  dmitry
 New Comment:

Dmitry, check this out too, along with all those other reports about
same issue.. :)


Previous Comments:


[2007-05-16 13:44:46] forjest at gmail dot com

I'm described problem, that is not foreach related. Just
1. Straight copy from one global scope variable to another
2. Copy from current runing context to global variable.

Not iterating local varibale after copying element of global array.
This is another bug, but may be from same family.
And please remember another one http://bugs.php.net/bug.php?id=37715
Problem appeared at 4.4.2 and 5.1.2 and was reported year ago...

May be I'm described duplicate of This is expected and not going to be
changed bug instead of assigned 'foreach' bug?



[2007-05-16 13:01:18] [EMAIL PROTECTED]

Duplicate of bug #40509.



[2007-05-12 10:10:17] forjest at gmail dot com

/*for simple case just wrap array in some array function. That will
cause small overhead, but at least save your internal pointer*/
$Foo = array('val1', 'val2', 'val3');
end($Foo);
var_dump(key($Foo));
$AllOkay = array_merge($Foo);
var_dump(key($Foo));

--
/*But to make immune running context for error handler function nothing
helps, except ugly serialize/unserialize solution*/

error_reporting(E_ALL); 
function TestErrorHandler($severity, $message, $filename, $line,
$super_globals) 
{ 
global $foo;
$foo = unserialize(serialize($super_globals));
} 

class Test  
{ 
 function run()  
 { 
  $Res = array('val1', 'val2', 'val3'); 
  end($Res); 
  var_dump(key($Res)); 
  HEY;//raise notice error 
  var_dump(key($Res));  
 } 
} 
$test = new Test(); 
set_error_handler('TestErrorHandler'); 
$test- run();



[2007-05-12 08:32:17] forjest at gmail dot com

Description:

Bug first appeared in 4.4.2. Version 4.4.1 works okay.
5.1.4, 5.2.1 has this bug too.
-
Seems algorithm of array copying was changed at 4.4.2 and 5.1.2
versions.
-
This behavior cause problems in unexpected situations such as error
handling functions, when array pointer reseted due copying from another
array which reference to it.


Reproduce code:
---
$Foo = array('val1', 'val2', 'val3');
end($Foo);
var_dump(key($Foo));
$MagicInternalPointerResetter = $Foo;
var_dump(key($Foo));
--
Code describing unexpected results of this behavior listed here:
http://www.pastebin.ru/10226


Expected result:

int(2) int(2)

Actual result:
--
int(2) int(0)





-- 
Edit this bug report at http://bugs.php.net/?id=41372edit=1


#41982 [Fbk-Opn]: cookie fails to set

2007-07-14 Thread alex__rider at hotmail dot com
 ID:   41982
 User updated by:  alex__rider at hotmail dot com
 Reported By:  alex__rider at hotmail dot com
-Status:   Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

These are the headers that firebug gives me:

Response Headers
DateSat, 14 Jul 2007 10:21:10 GMT
Server  Apache/2.2.4 (Win32) PHP/5.2.4-dev
X-Powered-ByPHP/5.2.4-dev
Keep-Alive  timeout=5, max=99
Connection  Keep-Alive
Content-Typetext/html
Transfer-Encoding   chunked

Request Headers
Hostlocalhost
User-Agent  Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.4)
Gecko/20070515 Firefox/2.0.0.4
Accept  
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language en-gb,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  300
Connection  keep-alive
Referer http://localhost/test/


Previous Comments:


[2007-07-14 09:06:21] [EMAIL PROTECTED]

Check the headers PHP sends for that page.(with e.g. Firebug)



[2007-07-13 21:27:09] alex__rider at hotmail dot com

The cookie is never set even with page reloads, my browser is set to
allow cookies, and there is no cookie set when I look at set cookies. I
have tried reinstalling both php and apache with no luck.



[2007-07-12 20:36:35] [EMAIL PROTECTED]

Do you mean it never get set even if you reload the page?



[2007-07-12 20:30:53] alex__rider at hotmail dot com

Description:

When trying to set a cookie in PHP under Apache2 / winXP, the cookie is
not set.

Reproduce code:
---
?php
setcookie('test','some text', time()+360);
echo 'cookie setbr';
if (isset($_COOKIE['test']))
{
echo 'cookie retrieved';
}
else
{
echo 'cookie failed';
}
?

Expected result:

The out put should read 'cookie retrieved' if the cookie was set

Actual result:
--
the output I get is the failed message





-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1



#41995 [Opn-Fbk]: ip2long() sometimes return wrong value

2007-07-14 Thread derick
 ID:  41995
 Updated by:  [EMAIL PROTECTED]
 Reported By: pigmey_avi at gorodok dot net
-Status:  Open
+Status:  Feedback
 Bug Type:Network related
 PHP Version: 4.4.7
 New Comment:

Please try using this CVS snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows (zip):
 
  http://snaps.php.net/win32/php5.2-win32-latest.zip

For Windows (installer):

  http://snaps.php.net/win32/php5.2-win32-installer-latest.msi


Previous Comments:


[2007-07-14 07:59:02] pigmey_avi at gorodok dot net

Description:

When ip2long() encountered triplet that can be represent as octal
number, the function represent it as octal.

For instance, when ip is '10.0.0.011', the last triplet will be readed
as 9, becouse 11 in 8 base is 9.

So, sometimes, ip2long() returns wrong value.






-- 
Edit this bug report at http://bugs.php.net/?id=41995edit=1


#41985 [Opn]: rename doesn't work

2007-07-14 Thread derick
 ID:   41985
 Updated by:   [EMAIL PROTECTED]
 Reported By:  marc dot bau at gmx dot net
 Status:   Open
 Bug Type: Feature/Change Request
 Operating System: Windows
 PHP Version:  5.2.3
 New Comment:

I actually agree with that... however, it's not possible to do this
atomically on windows if the file you're moving to exists. The only
option is to unlink() the target and then do the rename() but that
leaves a race condition. I don't think that is solvable on Windows.


Previous Comments:


[2007-07-13 20:57:49] marc dot bau at gmx dot net

Do you know how this works on *nix systems?

Well i will tell you - it will *move* the new file over the old
file in an atomic rename. This is what PHP needs to handle on Windows,
too. I don't need any extras on *nix to rename. And PHP internal command
should work platform independent. 

This bug should be fixed to make sure the code runs on windows in the
*same way* as it does on *nix systems.

What is so difficult to understand about this? Writing write code once,
*run everywhere* is not possible with this bug.



[2007-07-13 20:48:09] [EMAIL PROTECTED]

Please open a dictionary and translate the error message:
PHP Warning:  rename(C:\temp\tmp_file.txt.new,C:\temp\tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2

It says FILE EXISTS, don't you see it?
Please do NOT reopen the report again.
Thank you.



[2007-07-13 20:36:36] marc dot bau at gmx dot net

As already said, this won't help anything.

DON'T WORK:
?php
rename('C:\temp\tmp_file.txt.new', 'C:\temp\tmp_file.txt');
?

Error:
PHP Warning:  rename(C:\temp\tmp_file.txt.new,C:\temp\tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2

DON'T WORK:
?php
rename('C:\\temp\\tmp_file.txt.new', 'C:\\temp\\tmp_file.txt');
?

Error:
PHP Warning:  rename(C:\temp\tmp_file.txt.new,C:\temp\tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2

DON'T WORK:
?php
rename(C:\\temp\\tmp_file.txt.new, C:\\temp\\tmp_file.txt);
?

Error:
PHP Warning:  rename(C:\temp\tmp_file.txt.new,C:\temp\tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2

DON'T WORK:
?php
rename(C:/temp/tmp_file.txt.new, C:/temp/tmp_file.txt);
?

Error:
PHP Warning:  rename(C:/temp/tmp_file.txt.new,C:/temp/tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2


So you have a Windows Box next to you? Before answering, test yourself
if you don't trust me, but don't close this case until this bug has been
fixed! THX.



[2007-07-13 18:44:15] [EMAIL PROTECTED]

Please escape the \ as advised in the manual.



[2007-07-13 18:33:37] marc dot bau at gmx dot net

This doesn't have anything to do with double quotes. With single quotes
this isn't working, too.

?php
rename('C:\temp\tmp_file.txt.new', 'C:\temp\tmp_file.txt');
?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41985

-- 
Edit this bug report at http://bugs.php.net/?id=41985edit=1


#41993 [Opn-Bgs]: [] operator should be first class

2007-07-14 Thread johannes
 ID:   41993
 Updated by:   [EMAIL PROTECTED]
 Reported By:  jcampbell1 at gmail dot com
-Status:   Open
+Status:   Bogus
 Bug Type: Feature/Change Request
 Operating System: All
 PHP Version:  5.2.3
 New Comment:

Please do not submit the same bug more than once. An existing
bug report already describes this very problem. Even if you feel
that your issue is somewhat different, the resolution is likely
to be the same. 

Thank you for your interest in PHP.

This has been requested multiple times before, till now nobody came up
with a working solution.


Previous Comments:


[2007-07-13 23:09:32] jcampbell1 at gmail dot com

Description:

It seems very strange that the [] operator cannot be used on the result
of a function.  

Reproduce code:
---
function test() {
return array('dog','cat');
}

echo test()[0];  // produces a syntax error.

of course this works fine

class temp{}

function test() {
$o = new $temp;
$temp-foo = 'dog';
}

echo test()-foo; // works


Expected result:

dog






-- 
Edit this bug report at http://bugs.php.net/?id=41993edit=1


#41982 [Opn-Fbk]: cookie fails to set

2007-07-14 Thread jani
 ID:   41982
 Updated by:   [EMAIL PROTECTED]
 Reported By:  alex__rider at hotmail dot com
-Status:   Open
+Status:   Feedback
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

How exactly have you setup PHP in apache? Are there some special
modules enabled in Apache? I can't reproduce this at all..


Previous Comments:


[2007-07-14 10:26:51] alex__rider at hotmail dot com

These are the headers that firebug gives me:

Response Headers
DateSat, 14 Jul 2007 10:21:10 GMT
Server  Apache/2.2.4 (Win32) PHP/5.2.4-dev
X-Powered-ByPHP/5.2.4-dev
Keep-Alive  timeout=5, max=99
Connection  Keep-Alive
Content-Typetext/html
Transfer-Encoding   chunked

Request Headers
Hostlocalhost
User-Agent  Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.4)
Gecko/20070515 Firefox/2.0.0.4
Accept  
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language en-gb,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  300
Connection  keep-alive
Referer http://localhost/test/



[2007-07-14 09:06:21] [EMAIL PROTECTED]

Check the headers PHP sends for that page.(with e.g. Firebug)



[2007-07-13 21:27:09] alex__rider at hotmail dot com

The cookie is never set even with page reloads, my browser is set to
allow cookies, and there is no cookie set when I look at set cookies. I
have tried reinstalling both php and apache with no luck.



[2007-07-12 20:36:35] [EMAIL PROTECTED]

Do you mean it never get set even if you reload the page?



[2007-07-12 20:30:53] alex__rider at hotmail dot com

Description:

When trying to set a cookie in PHP under Apache2 / winXP, the cookie is
not set.

Reproduce code:
---
?php
setcookie('test','some text', time()+360);
echo 'cookie setbr';
if (isset($_COOKIE['test']))
{
echo 'cookie retrieved';
}
else
{
echo 'cookie failed';
}
?

Expected result:

The out put should read 'cookie retrieved' if the cookie was set

Actual result:
--
the output I get is the failed message





-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1


#38273 [Fbk-Opn]: Incorrect return address after the execution of a signal handler?

2007-07-14 Thread axelluttgens at swing dot be
 ID:   38273
 User updated by:  axelluttgens at swing dot be
 Reported By:  axelluttgens at swing dot be
-Status:   Feedback
+Status:   Open
 Bug Type: PCNTL related
 Operating System: Mac OSX 10.4.7
 PHP Version:  4.4.2
 New Comment:

So, as announced, I've compiled the php5.2-200707130630 snapshot.
Here follows the output of a php -i command:

PHP Version = 5.2.4-dev

System = Darwin ALMbp.local 8.10.1 Darwin Kernel Version 8.10.1: Wed
May 23 16:33:00 PDT 2007; root:xnu-792.22.5~1/RELEASE_I386 i386
Build Date = Jul 13 2007 10:13:10
Configure Command =  './configure'  '--prefix=/usr/local/php5'
'--with-zlib-dir=/usr' '--with-zlib' '--enable-zip' '--enable-mbstring'
'--enable-exif' '--enable-sockets' '--enable-ftp' '--enable-pcntl'
'--with-iodbc=/usr' '--with-curl=/usr' '--with-curlwrappers'
'--with-ldap=/usr' '--with-kerberos=/usr' '--with-apxs=/usr/sbin/apxs
Server API = Command Line Interface
Virtual Directory Support = disabled
Configuration File (php.ini) Path = /usr/local/php5/lib
Loaded Configuration File = (none)
PHP API = 20041225
PHP Extension = 20060613
Zend Extension = 220060519
Debug Build = no
Thread Safety = disabled
Zend Memory Manager = enabled
IPv6 Support = enabled
Registered PHP Streams = zip, php, file, data, ftp, gopher, telnet,
dict, ldap, http, https, ftps, compress.zlib  
Registered Stream Socket Transports = tcp, udp, unix, udg
Registered Stream Filters = string.rot13, string.toupper,
string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*,
zlib.*


This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

Of course, things have changed since July 2006, as I am now on an Intel
Mac, with OS X 10.4.10.
Anyway, I doubt to be able to exacly reproduce the former environement;
but, if needed, I could perhaps try the same on a 10.4.10 PPC.

So, I first tried the original reproduce code, the one dated 2006-07-31
with the if statement.
It seems that I still get the unexpected behavior when the dummy
statement ($err = $err;) is commented out:

$ ./sigtest.php 

^C
Warning: socket_select(): unable to select [4]: Interrupted system
call in /Volumes/ALMbpData/sigtest.php on line 32
Received SIGINT
^C
Warning: socket_select(): unable to select [4]: Interrupted system
call in /Volumes/ALMbpData/sigtest.php on line 32
Handling SIGINT
Received SIGINT
^C
Warning: socket_select(): unable to select [4]: Interrupted system
call in /Volumes/ALMbpData/sigtest.php on line 32
Handling SIGINT
Received SIGINT
[and so on...]

and that uncommenting the dummy statement still brings the expected
behavior back:

$ ./sigtest.php 

^C
Warning: socket_select(): unable to select [4]: Interrupted system
call in /Volumes/ALMbpData/sigtest.php on line 32
Received SIGINT
Handling SIGINT
^C
Warning: socket_select(): unable to select [4]: Interrupted system
call in /Volumes/ALMbpData/sigtest.php on line 32
Received SIGINT
Handling SIGINT
[and so on...]

In a word, it looks like the same behavior has been carried over from
php 4 to php 5.

On the other hand, re-reading my variant dated 2006-08-02, the one with
the switch statement instead of the if statement, I believe I just
introduced noise (sorry for that...).
Indeed, one may notice that I introduced a statement between the case
SOCKET_EINTR: and the PollSigs() call.
Removing that extraneous statement, the socket_clear_error() call, I
just get the same unexpected behavior as with he original reproduce
code.
In a sense, this is good news, as the basic features of the language
thus behave similary!

HTH,
Axel


Previous Comments:


[2007-07-13 07:56:57] axelluttgens at swing dot be

Hello Jani,

I'll try to test the case with the php5.2-200707130630 snapshot during
this week-end.

Thanks for the follow-up,
Axel



[2007-07-11 13:05:39] [EMAIL PROTECTED]

Please try the 5.2 snapshot as requested before. We are going to
discontinue support for PHP 4 this year so it is very unlikely that this
bug will ever get fixed in PHP 4. But if the bug does not exist in PHP
5.2 it's possible to backport the fix from it to PHP 4.



[2006-08-02 11:05:58] axelluttgens at swing dot be

As a follow-up: a switch statement, instead of reproduce code's if
statement, does not seem to be affected by the problem.

So, replacing the while loop in reproduce code with this one:

while 

#41982 [Fbk-Opn]: cookie fails to set

2007-07-14 Thread alex__rider at hotmail dot com
 ID:   41982
 User updated by:  alex__rider at hotmail dot com
 Reported By:  alex__rider at hotmail dot com
-Status:   Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

I have installed apache2 from the windows installer on the site, and
installed php5 from the windows installer, added the relevant bits into
the httpd.conf file

PHPIniDir K:\apps\PHP\
LoadModule php5_module K:\apps\PHP\\php5apache2_2.dll

ScriptAlias /php/ K:/Apps/PHP
AddType application/x-httpd-php .php .php5
Action application/x-httpd-php K:/Apps/PHP/php.exe

the only extra module I have installed is php mysql


Previous Comments:


[2007-07-14 10:55:34] [EMAIL PROTECTED]

How exactly have you setup PHP in apache? Are there some special
modules enabled in Apache? I can't reproduce this at all..



[2007-07-14 10:26:51] alex__rider at hotmail dot com

These are the headers that firebug gives me:

Response Headers
DateSat, 14 Jul 2007 10:21:10 GMT
Server  Apache/2.2.4 (Win32) PHP/5.2.4-dev
X-Powered-ByPHP/5.2.4-dev
Keep-Alive  timeout=5, max=99
Connection  Keep-Alive
Content-Typetext/html
Transfer-Encoding   chunked

Request Headers
Hostlocalhost
User-Agent  Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.4)
Gecko/20070515 Firefox/2.0.0.4
Accept  
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language en-gb,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  300
Connection  keep-alive
Referer http://localhost/test/



[2007-07-14 09:06:21] [EMAIL PROTECTED]

Check the headers PHP sends for that page.(with e.g. Firebug)



[2007-07-13 21:27:09] alex__rider at hotmail dot com

The cookie is never set even with page reloads, my browser is set to
allow cookies, and there is no cookie set when I look at set cookies. I
have tried reinstalling both php and apache with no luck.



[2007-07-12 20:36:35] [EMAIL PROTECTED]

Do you mean it never get set even if you reload the page?



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41982

-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1


#41982 [Opn-Fbk]: cookie fails to set

2007-07-14 Thread jani
 ID:   41982
 Updated by:   [EMAIL PROTECTED]
 Reported By:  alex__rider at hotmail dot com
-Status:   Open
+Status:   Feedback
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

Try remove that last Action entry from httpd.conf..


Previous Comments:


[2007-07-14 11:08:11] alex__rider at hotmail dot com

I have installed apache2 from the windows installer on the site, and
installed php5 from the windows installer, added the relevant bits into
the httpd.conf file

PHPIniDir K:\apps\PHP\
LoadModule php5_module K:\apps\PHP\\php5apache2_2.dll

ScriptAlias /php/ K:/Apps/PHP
AddType application/x-httpd-php .php .php5
Action application/x-httpd-php K:/Apps/PHP/php.exe

the only extra module I have installed is php mysql



[2007-07-14 10:55:34] [EMAIL PROTECTED]

How exactly have you setup PHP in apache? Are there some special
modules enabled in Apache? I can't reproduce this at all..



[2007-07-14 10:26:51] alex__rider at hotmail dot com

These are the headers that firebug gives me:

Response Headers
DateSat, 14 Jul 2007 10:21:10 GMT
Server  Apache/2.2.4 (Win32) PHP/5.2.4-dev
X-Powered-ByPHP/5.2.4-dev
Keep-Alive  timeout=5, max=99
Connection  Keep-Alive
Content-Typetext/html
Transfer-Encoding   chunked

Request Headers
Hostlocalhost
User-Agent  Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.4)
Gecko/20070515 Firefox/2.0.0.4
Accept  
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language en-gb,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  300
Connection  keep-alive
Referer http://localhost/test/



[2007-07-14 09:06:21] [EMAIL PROTECTED]

Check the headers PHP sends for that page.(with e.g. Firebug)



[2007-07-13 21:27:09] alex__rider at hotmail dot com

The cookie is never set even with page reloads, my browser is set to
allow cookies, and there is no cookie set when I look at set cookies. I
have tried reinstalling both php and apache with no luck.



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41982

-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1


#41982 [Fbk-Opn]: cookie fails to set

2007-07-14 Thread alex__rider at hotmail dot com
 ID:   41982
 User updated by:  alex__rider at hotmail dot com
 Reported By:  alex__rider at hotmail dot com
-Status:   Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

I removed the last 'action' form the httpd.conf file and restarted
apache, php works but I still get the same problem, the cookie is still
not set.


Previous Comments:


[2007-07-14 11:09:56] [EMAIL PROTECTED]

Try remove that last Action entry from httpd.conf..



[2007-07-14 11:08:11] alex__rider at hotmail dot com

I have installed apache2 from the windows installer on the site, and
installed php5 from the windows installer, added the relevant bits into
the httpd.conf file

PHPIniDir K:\apps\PHP\
LoadModule php5_module K:\apps\PHP\\php5apache2_2.dll

ScriptAlias /php/ K:/Apps/PHP
AddType application/x-httpd-php .php .php5
Action application/x-httpd-php K:/Apps/PHP/php.exe

the only extra module I have installed is php mysql



[2007-07-14 10:55:34] [EMAIL PROTECTED]

How exactly have you setup PHP in apache? Are there some special
modules enabled in Apache? I can't reproduce this at all..



[2007-07-14 10:26:51] alex__rider at hotmail dot com

These are the headers that firebug gives me:

Response Headers
DateSat, 14 Jul 2007 10:21:10 GMT
Server  Apache/2.2.4 (Win32) PHP/5.2.4-dev
X-Powered-ByPHP/5.2.4-dev
Keep-Alive  timeout=5, max=99
Connection  Keep-Alive
Content-Typetext/html
Transfer-Encoding   chunked

Request Headers
Hostlocalhost
User-Agent  Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.4)
Gecko/20070515 Firefox/2.0.0.4
Accept  
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language en-gb,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  300
Connection  keep-alive
Referer http://localhost/test/



[2007-07-14 09:06:21] [EMAIL PROTECTED]

Check the headers PHP sends for that page.(with e.g. Firebug)



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41982

-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1


#41985 [Opn]: rename doesn't work

2007-07-14 Thread marc dot bau at gmx dot net
 ID:   41985
 User updated by:  marc dot bau at gmx dot net
 Reported By:  marc dot bau at gmx dot net
 Status:   Open
 Bug Type: Feature/Change Request
 Operating System: Windows
 PHP Version:  5.2.3
 New Comment:

Well, if this rename is not possible atomically (how bad this ever is),
i think PHP should handle the copy/unlink logic in background if i use
rename().

I simply don't like to think about possible platform dependencies (i
don't know anything about) and hack around in a bad way that additional
produce an error with E_ALL  ~E_NOTICE i cannot circumvent.


Previous Comments:


[2007-07-14 10:35:16] [EMAIL PROTECTED]

I actually agree with that... however, it's not possible to do this
atomically on windows if the file you're moving to exists. The only
option is to unlink() the target and then do the rename() but that
leaves a race condition. I don't think that is solvable on Windows.



[2007-07-13 20:57:49] marc dot bau at gmx dot net

Do you know how this works on *nix systems?

Well i will tell you - it will *move* the new file over the old
file in an atomic rename. This is what PHP needs to handle on Windows,
too. I don't need any extras on *nix to rename. And PHP internal command
should work platform independent. 

This bug should be fixed to make sure the code runs on windows in the
*same way* as it does on *nix systems.

What is so difficult to understand about this? Writing write code once,
*run everywhere* is not possible with this bug.



[2007-07-13 20:48:09] [EMAIL PROTECTED]

Please open a dictionary and translate the error message:
PHP Warning:  rename(C:\temp\tmp_file.txt.new,C:\temp\tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2

It says FILE EXISTS, don't you see it?
Please do NOT reopen the report again.
Thank you.



[2007-07-13 20:36:36] marc dot bau at gmx dot net

As already said, this won't help anything.

DON'T WORK:
?php
rename('C:\temp\tmp_file.txt.new', 'C:\temp\tmp_file.txt');
?

Error:
PHP Warning:  rename(C:\temp\tmp_file.txt.new,C:\temp\tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2

DON'T WORK:
?php
rename('C:\\temp\\tmp_file.txt.new', 'C:\\temp\\tmp_file.txt');
?

Error:
PHP Warning:  rename(C:\temp\tmp_file.txt.new,C:\temp\tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2

DON'T WORK:
?php
rename(C:\\temp\\tmp_file.txt.new, C:\\temp\\tmp_file.txt);
?

Error:
PHP Warning:  rename(C:\temp\tmp_file.txt.new,C:\temp\tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2

DON'T WORK:
?php
rename(C:/temp/tmp_file.txt.new, C:/temp/tmp_file.txt);
?

Error:
PHP Warning:  rename(C:/temp/tmp_file.txt.new,C:/temp/tmp_file.txt):
File exists in C:\Temp\rename-test.php on line 2


So you have a Windows Box next to you? Before answering, test yourself
if you don't trust me, but don't close this case until this bug has been
fixed! THX.



[2007-07-13 18:44:15] [EMAIL PROTECTED]

Please escape the \ as advised in the manual.



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41985

-- 
Edit this bug report at http://bugs.php.net/?id=41985edit=1


#41996 [NEW]: Problem accessing Oracle ROWID with PDO

2007-07-14 Thread tsedeke at feigenblatt dot de
From: tsedeke at feigenblatt dot de
Operating system: Suse Enterprise Server 9
PHP version:  5.2.3
PHP Bug Type: PDO related
Bug description:  Problem accessing Oracle ROWID with PDO

Description:

Getting error accessing the oracle rowid in a PDO select statement.

The NLS_LANG is set to AMERICAN_AMERICA.AL32UTF8 same as the database.
I also restartet the Apache2.2 with the php as module, to be sure it take
the right parameters.

Reproduce code:
---
$db_username = elements;
$db_password = elements;
$db = oci:dbname=XE;charset=AL32UTF8;
$conn = new PDO($db,$db_username,$db_password);

$stmt = $conn-prepare(SELECT rowid,t1,t2 FROM test);
$stmt-execute();
  while ($row = $stmt-fetch()) {
print_r($row);
  }

Expected result:

Array ( [ROWID] = AAADVUAAEFMAAA [0] = AAADVUAAEFMAAA [T1] =
test1 [1] = test1 [T2] = First test [2] = First test )

Actual result:
--
Warning: PDOStatement::fetch() [function.PDOStatement-fetch]: column 0
data was too large for buffer and was truncated to fit it

-- 
Edit bug report at http://bugs.php.net/?id=41996edit=1
-- 
Try a CVS snapshot (PHP 4.4): 
http://bugs.php.net/fix.php?id=41996r=trysnapshot44
Try a CVS snapshot (PHP 5.2): 
http://bugs.php.net/fix.php?id=41996r=trysnapshot52
Try a CVS snapshot (PHP 6.0): 
http://bugs.php.net/fix.php?id=41996r=trysnapshot60
Fixed in CVS: http://bugs.php.net/fix.php?id=41996r=fixedcvs
Fixed in release: 
http://bugs.php.net/fix.php?id=41996r=alreadyfixed
Need backtrace:   http://bugs.php.net/fix.php?id=41996r=needtrace
Need Reproduce Script:http://bugs.php.net/fix.php?id=41996r=needscript
Try newer version:http://bugs.php.net/fix.php?id=41996r=oldversion
Not developer issue:  http://bugs.php.net/fix.php?id=41996r=support
Expected behavior:http://bugs.php.net/fix.php?id=41996r=notwrong
Not enough info:  
http://bugs.php.net/fix.php?id=41996r=notenoughinfo
Submitted twice:  
http://bugs.php.net/fix.php?id=41996r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=41996r=globals
PHP 3 support discontinued:   http://bugs.php.net/fix.php?id=41996r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=41996r=dst
IIS Stability:http://bugs.php.net/fix.php?id=41996r=isapi
Install GNU Sed:  http://bugs.php.net/fix.php?id=41996r=gnused
Floating point limitations:   http://bugs.php.net/fix.php?id=41996r=float
No Zend Extensions:   http://bugs.php.net/fix.php?id=41996r=nozend
MySQL Configuration Error:http://bugs.php.net/fix.php?id=41996r=mysqlcfg


#26004 [Com]: $_POST variables not set when using enctype=multipart/form-data

2007-07-14 Thread mgo dot netmail at gmail dot com
 ID:   26004
 Comment by:   mgo dot netmail at gmail dot com
 Reported By:  jacknorton101 at hotmail dot com
 Status:   No Feedback
 Bug Type: *General Issues
 Operating System: RedHat Linux 9
 PHP Version:  4.3.3
 New Comment:

Yup, have the same problem with PHP 5.1.6.
If someone have a fix for this issue please let me know. I recently
update my environment and this is starting to cost me too much time and
money.

Thanks in advanced.


Previous Comments:


[2007-07-03 11:34:35] info at netsilik dot nl

Althoug I cannot reproduce the error myself some of my custommers
experience the bug described above.
And they pop-up in my error-log files

When reguesting a page with the POST method and the enctype is set to
multipart/form-data, the $_POST suberglobal is left empty.

(Post requests without enctype=multipart/form-data work fine.)

I've recently moved to PHP 5.1.6.
The exact same code worked fine for months on the previous version.


some php.ini settings (same as previous version):
  max_execution_time = 60
  max_input_time = 120
  memory_limit = 24M
  post_max_size = 8M
  file_uploads = On
  upload_max_filesize = 3M

The html-form: (the document is valid XHTML 1.0 Transitional)

form action=/gallery/saveFile.php method=post
enctype=multipart/form-data
  input type=hidden name=sessionId
value=0123456789ABCDEF/
  input type=hidden name=albumId value=123/
  input type=hidden name=MAX_FILE_SIZE value=3145728/
  
  input type=text name=title value= maxlength=64/
  input type=file name=userFile/
  input type=checkbox name=overwerite value=true/
  input type=submit value=Upload/
/form

I've not yet found a solutions for this VERY SERIOUS problem
If there is anyone that has a fix, please let me know.



[2007-05-11 04:56:29] no_patience at hotmail dot com

I worked around this injecting the values I wanted into the forms
action statement and using $_GET to extract these values, the file
uploading part then extracts its informaion from the POST part.

I was also seeing this happening with both IE and FF



[2007-05-10 08:47:07] dlodhia at yahoo dot com

hi, having same problem.

This is working fine with FF, but not with IE.

If its working fine with FF, it could not be problem with PHP.INI or
HTTD.CONF.

any suggestion what could be the reason?



[2006-08-10 06:25:06] cometfish at hotmail dot com

Hi, I had this same problem. I spent hours searching the web, but found
nothing except this:
--
from http://www.php.net/manual/en/features.file-upload.php
jason
09-Jan-2006 05:08 
Regarding empty $_FILES and $_POST arrays when uploading files larger
than post_max_size:
Tucked away in
http://us3.php.net/manual/en/ini.core.php#ini.post-max-size is this
nugget:
If the size of post data is greater than post_max_size, the $_POST and
$_FILES superglobals are empty. This can be tracked in various ways,
e.g. by passing the $_GET variable to the script processing the data,
i.e. form action=edit.php?processed=1, and then checking if
$_GET['processed'] is set.
This may seem like a bug. You'd expect something like
UPLOAD_ERR_FORM_SIZE to be set. But you just two empty superglobals.
I've seen it submitted to bugs.php.net twice and it's been marked as
bogus both times. 


I saw this, and realised that my MAX_FILE_SIZE hidden form element was
missing. Inserting this fixed the problem immediately. My PHP version is
4.4.2. Hope this helps.



[2006-05-11 21:24:50] hostgeekz at gmail dot com

I am having this issue on PHP 5.0.4, and PHP 5.1.4

Exactly the same as stated above,
enctype=multipart/form-data



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/26004

-- 
Edit this bug report at http://bugs.php.net/?id=26004edit=1


#40933 [Fbk-Opn]: Streams blocking under concurrent access

2007-07-14 Thread loony at loonybin dot org
 ID:   40933
 User updated by:  loony at loonybin dot org
 Reported By:  loony at loonybin dot org
-Status:   Feedback
+Status:   Open
 Bug Type: Streams related
 Operating System: Linux 2.6.20 - FC6
 PHP Version:  5.2.1
 New Comment:

Sorry about the ob_flush, it can be removed. The code came originally
from a larger application and I cut out as much as I could. Must have
missed the ob_flush. 

The problem is the same after the ob_flush has been removed.

I am not aware of any PHP version that this works on. I've tried from
4.0.xx to php5.2-200707122230 and none worked properly.


Previous Comments:


[2007-07-14 09:14:43] [EMAIL PROTECTED]

Does that script work in any PHP version? I also get some E_NOTICE for
that ob_flush(); call..



[2007-07-13 02:27:36] loony at loonybin dot org

Tried php5.2-200707122230 and the behavior does not seem to have
changed.



[2007-07-12 21:16:39] [EMAIL PROTECTED]

Please try using this CVS snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows (zip):
 
  http://snaps.php.net/win32/php5.2-win32-latest.zip

For Windows (installer):

  http://snaps.php.net/win32/php5.2-win32-installer-latest.msi





[2007-03-28 04:32:29] loony at loonybin dot org

Description:

Tail for php. Open the file, output the current content... then wait
for more - if no more content arrives, then return number of bytes read
after a while... 

Running 1 execution of this code works fine. Executing it from two
browsers at the same time blocks. 

Happens on Fedora Core 6 default 5.1.6 and also after upgrading to
5.2.1

Reproduce code:
---
http://ns1.loonybin.org/php/tail.tar.gz - 45 lines

Expected result:

See content of file printed immediately. If any content is appended to
the file within 15 seconds from request start, that content should be
printed as well. 

This works with 1 execution of the code. Should yield same result if
executed multiple times. 

Actual result:
--
1 run of the code works. Multiple executions however block on semop /
epoll_wait. 

semop(4358158, 0x15470c, 1)   = 0 2.194313
epoll_wait(16, {{EPOLLIN, {u32=2156798632, u64=13801426109869204136}}},
2, -1) = 1 3.738842

As soon as the first execution of the code has ended, the second will
run as expected and finish successfully (as long as max_execution_time
is not reached). 





-- 
Edit this bug report at http://bugs.php.net/?id=40933edit=1


#39858 [Com]: Lost connection to MySQL server during query by a repeated call stored proced

2007-07-14 Thread nitel_defect at yahoo dot com
 ID:   39858
 Comment by:   nitel_defect at yahoo dot com
 Reported By:  develar at gmail dot com
 Status:   Assigned
 Bug Type: PDO related
 Operating System: Windows XP SP2
 PHP Version:  5.2.0
 Assigned To:  wez
 New Comment:

What's the status of this bug?
I mean the part about any query ran after a fetchAll from a stored
procedure call, saying that there are still unfetched results. And that
happens even with a nextRowset call :)
The bug still exists in the last library from snaps, on Windows.


Previous Comments:


[2007-07-10 13:38:46] matt dot keeble at gmail dot com

As an update to this, I'm not sure that this is a bug in PHP at all - I
believe it's a bug with MySQL. Have stumbled across this bug report
today after receiving MySQL lost connections from the MySQL command
line, and from Navicat Terminal - in both cases there was no PHP
involved at all, just an SP that calls a function in a loop which
subsequently calls another function. The SP returns the first row, but
then dies with the error message and goes into an irretrievable loop (in
Navicat).

Don't know if this will help, but thought I would share...



[2007-06-21 12:58:38] timo at hhesse dot de

Well, this is very disappointing. A new PHP version is out and this
stupid bug has not been fixed although a solution seems to be found by
mike at we11er dot co dot uk.

I can't use PHP5 without this hacked dll on our servers. Seems like no
one feels responsible for developers on windows servers. 
There's no bug on linux so what are you talking about...?



[2007-05-18 21:12:31] paulsidekick at gmail dot com

I am still not able to issue two stored procedures in a row using PDO
and mysql 5.0.31, php 5.2.1 and windows server 2003 when using the php
pdo_mysql.dll extension.  Is there any fix for this planned?  It has
been a very long time since it was first noted. If there is a solution
other than using a hacked DLL with no source code, can somebody please
advice.  This is the simplest way to see it happen.

$stmt = $myPdoConnection-query(CALL myStoredProc ('x',  'y'));

//this returns results
print_r($stmt-fetchAll());

//this does not - says mysql lost connection
print_r($stmt-fetchAll());

If I do this with SELECT statements instead I get no problem.  I
believe that there is an additional row set send back with stored
procedures from mysql that needs to be interated over in order to issue
the next statement.  However, I cannot access them with 

$stmt-nextRowset();

as I get Warning: PDOStatement::nextRowset()
[function.PDOStatement-nextRowset]: SQLSTATE[HYC00]: Optional feature
not implemented in 

Please help.



[2007-04-09 19:13:53] jaylehvee at srgtampa dot com

I am using this modified DLL, above, and it works great, in most
regards. The core issue still exists, however. Mulitple calls to stored
procedures are still causing db connection loss. I've had to go
lazy-load kuh-ray-zee on my objects to avoid connection failures. I
shouldn't have to use the wrong patterns in order to work around a
faulty db driver.

Mike, any chance you can post your hacked source somewhere?



[2007-03-26 19:57:43] timo at hhesse dot de

Hi mike, thanks for the fixed php_pdo_mysql.dll! I tested it right now
and it works perfectly!
It took me quite the whole day finding out that it was a php bug what
made my stored procedures producing those exceptions (on Windows IIS).

But now I'm asking myself if your fix will find its way into the next
PHP release so that I can be sure my code will work at my customers
Windows servers too or if I should use some script language that
supports stored procedures as they are meant...

A reliable answer in this issue would be great! ;-)



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/39858

-- 
Edit this bug report at http://bugs.php.net/?id=39858edit=1


#41982 [Opn-Bgs]: cookie fails to set

2007-07-14 Thread jani
 ID:   41982
 Updated by:   [EMAIL PROTECTED]
 Reported By:  alex__rider at hotmail dot com
-Status:   Open
+Status:   Bogus
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

You have done some sort of installation error somewhere.
I tried myself on completely clean machine and installed both Apache
and PHP using their installers and just used the default options for
everything. (selected the Apache 2.2 module in PHP installer!)

Setting cookies works just fine here. 

Please ask further support questions elsewhere.
You can find support resources at: 

http://www.php.net/support.php


Previous Comments:


[2007-07-14 11:32:35] alex__rider at hotmail dot com

I removed the last 'action' form the httpd.conf file and restarted
apache, php works but I still get the same problem, the cookie is still
not set.



[2007-07-14 11:09:56] [EMAIL PROTECTED]

Try remove that last Action entry from httpd.conf..



[2007-07-14 11:08:11] alex__rider at hotmail dot com

I have installed apache2 from the windows installer on the site, and
installed php5 from the windows installer, added the relevant bits into
the httpd.conf file

PHPIniDir K:\apps\PHP\
LoadModule php5_module K:\apps\PHP\\php5apache2_2.dll

ScriptAlias /php/ K:/Apps/PHP
AddType application/x-httpd-php .php .php5
Action application/x-httpd-php K:/Apps/PHP/php.exe

the only extra module I have installed is php mysql



[2007-07-14 10:55:34] [EMAIL PROTECTED]

How exactly have you setup PHP in apache? Are there some special
modules enabled in Apache? I can't reproduce this at all..



[2007-07-14 10:26:51] alex__rider at hotmail dot com

These are the headers that firebug gives me:

Response Headers
DateSat, 14 Jul 2007 10:21:10 GMT
Server  Apache/2.2.4 (Win32) PHP/5.2.4-dev
X-Powered-ByPHP/5.2.4-dev
Keep-Alive  timeout=5, max=99
Connection  Keep-Alive
Content-Typetext/html
Transfer-Encoding   chunked

Request Headers
Hostlocalhost
User-Agent  Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.4)
Gecko/20070515 Firefox/2.0.0.4
Accept  
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language en-gb,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  300
Connection  keep-alive
Referer http://localhost/test/



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41982

-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1


#41982 [Bgs]: cookie fails to set

2007-07-14 Thread jani
 ID:   41982
 Updated by:   [EMAIL PROTECTED]
 Reported By:  alex__rider at hotmail dot com
 Status:   Bogus
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

Note: I didn't have to edit any configuration file at all to get
Apache+PHP running..


Previous Comments:


[2007-07-14 20:52:59] [EMAIL PROTECTED]

You have done some sort of installation error somewhere.
I tried myself on completely clean machine and installed both Apache
and PHP using their installers and just used the default options for
everything. (selected the Apache 2.2 module in PHP installer!)

Setting cookies works just fine here. 

Please ask further support questions elsewhere.
You can find support resources at: 

http://www.php.net/support.php



[2007-07-14 11:32:35] alex__rider at hotmail dot com

I removed the last 'action' form the httpd.conf file and restarted
apache, php works but I still get the same problem, the cookie is still
not set.



[2007-07-14 11:09:56] [EMAIL PROTECTED]

Try remove that last Action entry from httpd.conf..



[2007-07-14 11:08:11] alex__rider at hotmail dot com

I have installed apache2 from the windows installer on the site, and
installed php5 from the windows installer, added the relevant bits into
the httpd.conf file

PHPIniDir K:\apps\PHP\
LoadModule php5_module K:\apps\PHP\\php5apache2_2.dll

ScriptAlias /php/ K:/Apps/PHP
AddType application/x-httpd-php .php .php5
Action application/x-httpd-php K:/Apps/PHP/php.exe

the only extra module I have installed is php mysql



[2007-07-14 10:55:34] [EMAIL PROTECTED]

How exactly have you setup PHP in apache? Are there some special
modules enabled in Apache? I can't reproduce this at all..



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41982

-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1


#41713 [Asn]: Persistent memory consumption since 5.2

2007-07-14 Thread jani
 ID:   41713
 Updated by:   [EMAIL PROTECTED]
 Reported By:  mplomer at gmx dot de
 Status:   Assigned
 Bug Type: Performance problem
 Operating System: win32 only
-PHP Version:  5.2CVS-2007-06-26
+PHP Version:  5.2CVS-2007-07-12
 Assigned To:  dmitry
 New Comment:

And I can reproduce this too on Windows, using latest snapshot
available.


Previous Comments:


[2007-07-14 09:15:28] [EMAIL PROTECTED]

Dmitry, please check this out.



[2007-07-11 08:43:55] mplomer at gmx dot de

I tested with PHP 5.2.0 now, and I can reproduce the described
behaviour from [30 Jun 10:19am UTC] too. Only when I am testing with PHP
5.1.6, I can't reproduce it.
But I agree with you, that this points at the new memory management on
win32.



[2007-07-10 23:39:09] spamtrap at psychoticwolf dot net

I see this with PHP 5.2.1 - 5.2.3 (mod_php5 with Apache 2.0.59 and
2.2.4 on WinXP and Win2003). I did some regression testing and it seems
to have started between 5.2.0 and 5.2.1 which points at the new memory
management on win32. Memload was normal under 5.2.0.  After awhile,
Apache consumes as previously reported, 300-600mb (usually around 330mb
+ 6-700mb virtual), and, curiously, PHP thows a Fatal Error that its
exceeded its memory limit for that script, even though it hasn't, as the
script doesn't use more than about 300k. (Only seen this last part once,
so far, so that might be a fluke.)



[2007-07-09 13:48:22] mplomer at gmx dot de

Does somebody have any ideas to track this down?
Are there any PHP core developers with a windows-test-environment?
Aren't there any PHP developers who have the problem, that Apache/PHP
eats up all RAM after some hours of developing and testing bigger
PHP-projects?



[2007-06-30 11:32:59] mplomer at gmx dot de

Another developer tested this on his own machine now, with the same
Apache/PHP environment, and could affirm this behavior. The memory usage
values are respectively 0,1-0,3 MB different, but the principle is the
same. So the behavior seems not to be system dependent.



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41713

-- 
Edit this bug report at http://bugs.php.net/?id=41713edit=1


#41982 [Bgs-Csd]: cookie fails to set

2007-07-14 Thread alex__rider at hotmail dot com
 ID:   41982
 User updated by:  alex__rider at hotmail dot com
 Reported By:  alex__rider at hotmail dot com
-Status:   Bogus
+Status:   Closed
 Bug Type: Apache2 related
 Operating System: WinXP
 PHP Version:  5.2.3
 New Comment:

Thanks for the help you gave.


Previous Comments:


[2007-07-14 20:53:33] [EMAIL PROTECTED]

Note: I didn't have to edit any configuration file at all to get
Apache+PHP running..



[2007-07-14 20:52:59] [EMAIL PROTECTED]

You have done some sort of installation error somewhere.
I tried myself on completely clean machine and installed both Apache
and PHP using their installers and just used the default options for
everything. (selected the Apache 2.2 module in PHP installer!)

Setting cookies works just fine here. 

Please ask further support questions elsewhere.
You can find support resources at: 

http://www.php.net/support.php



[2007-07-14 11:32:35] alex__rider at hotmail dot com

I removed the last 'action' form the httpd.conf file and restarted
apache, php works but I still get the same problem, the cookie is still
not set.



[2007-07-14 11:09:56] [EMAIL PROTECTED]

Try remove that last Action entry from httpd.conf..



[2007-07-14 11:08:11] alex__rider at hotmail dot com

I have installed apache2 from the windows installer on the site, and
installed php5 from the windows installer, added the relevant bits into
the httpd.conf file

PHPIniDir K:\apps\PHP\
LoadModule php5_module K:\apps\PHP\\php5apache2_2.dll

ScriptAlias /php/ K:/Apps/PHP
AddType application/x-httpd-php .php .php5
Action application/x-httpd-php K:/Apps/PHP/php.exe

the only extra module I have installed is php mysql



The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/41982

-- 
Edit this bug report at http://bugs.php.net/?id=41982edit=1