#47017 [Asn->Tbd]: mysqlnd does not work with MYSQL_CLIENT_COMPRESS flag

2009-11-20 Thread uw
 ID:   47017
 Updated by:   u...@php.net
 Reported By:  surfchen at gmail dot com
-Status:   Assigned
+Status:   To be documented
 Bug Type: MySQL related
 Operating System: Any
 PHP Version:  5.3CVS-2009-01-06 (snap)
 Assigned To:  mysql
 New Comment:

mysqlnd now supports the compressed protocol.


Previous Comments:


[2009-10-09 14:20:02] u...@php.net

The patch is ready and tested. It will be committed once PHP 5.3.1 has
been released.



[2009-02-03 11:52:12] johan...@php.net

MYSQL_CLIENT_COMPRESS, in most cases, costs CPU but doesn't result in a
measurable gain in throughput. It will most likely not be implemented in
mysqlnd till 5.3.0 is released.



[2009-01-19 09:56:17] surfchen at gmail dot com

typo:
there is error,warning => there is no error,warning



[2009-01-08 12:22:35] surfchen at gmail dot com

> Is the bug that the connection cannot be used after setting the flag
or that the compressed protocol is not supported? 
This is can be used for mysql_get_server_info()(maybe this function was
getting these info on connecting) and similar functions,but can't be
used for mysql_query().What's more,when using for mysql_set_charset(),a
large memory was allocated(Fatal error: Allowed memory size of 134217728
bytes exhausted (tried to allocate 807601282 bytes)),It's so
strange.(memory problem is another topic, sorry for explaining here.)


> Do you use the compression and how does it make your application run
faster? 
I can't follow your meaning.This question seems not related to our
topic.

> Is your MySQL server on the local network or remote?
I have tested both unix socket and tcp in my box.No "network".And my
mysql server have compression enabled(it need to be enable?I forget.).It
can be connected and used with php ext/mysql driven by lib libmysql with
the MYSQL_CLIENT_COMPRESS.so it's not a server problem.

Let me desc more detail.

I don't know mysqlnd how to link and use compression lib,but I have
compile with "./configure --with-mysql=mysqlnd --with-zlib
--with-zlib-dir=/usr/local" and I can see "ZLib Support => enabled" in
php -i(means that the zlib dir are correct.), and During the
compilation,there is error ,warning or notice tell me that "you was
doing incorrectly".

This bug is raised whether enable zts or not.



[2009-01-08 10:48:51] and...@php.net

Is the bug that the connection cannot be used after setting the flag or
that the compressed protocol is not supported? Do you use the
compression and how does it make your application run faster? Is your
MySQL server on the local network or remote?

Thanks you!
Andrey



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/47017

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



#50163 [Fbk->Opn]: IUSR_ NTFS permissions issue on PHP 5.2.11-nts

2009-11-20 Thread be3ch at centrum dot cz
 ID:   50163
 User updated by:  be3ch at centrum dot cz
 Reported By:  be3ch at centrum dot cz
-Status:   Feedback
+Status:   Open
 Bug Type: Filesystem function related
 Operating System: win32 only - Windows 2003 Server
 PHP Version:  5.2.11
 Assigned To:  pajoye
 New Comment:

Any progress? :)


Previous Comments:


[2009-11-14 08:48:38] be3ch at centrum dot cz

open_basedir and include_path are for every case same :

open_basedir = D:\wwwroot\testcom;D:\tmp\System;D:\tmp\Php
include_path = .;D:\wwwroot\testcom\www;D:\wwwroot\testcom

If open_basedir is disabled (empty), result of test script with
relative path is : bool(false) . Result with full path is correctly :
bool(true).



[2009-11-14 02:34:44] ksin...@php.net

Can you paste the value of include_path directive
(ini_get('include_path')) for each of the cases? Given that fullpath to
file works with just read permissions tell that relative path test.php
is getting resolved to some other path which is outside open_basedir.
Strange that adding execute permission make it resolve to a different
path.



[2009-11-13 12:15:32] be3ch at centrum dot cz

D:\wwwroot>icacls D:\wwwroot\testcom\
D:\wwwroot\testcom\ NT AUTHORITY\SYSTEM:(OI)(CI)(F)
NT AUTHORITY\NETWORK SERVICE:(OI)(CI)(R)
BUILTIN\Administrators:(OI)(CI)(F)
TEST_SERVER\G6FTPUser:(OI)(CI)(R,W,D,DC)
TEST_SERVER\IUSR_testcom:(OI)(CI)(R)

Successfully processed 1 files; Failed processing 0 files

D:\wwwroot>icacls D:\wwwroot\testcom\www
D:\wwwroot\testcom\www BUILTIN\Administrators:(OI)(CI)(F)
   TEST_SERVER\G6FTPUser:(OI)(CI)(R,W,D,DC)
   TEST_SERVER\IUSR_testcom:(OI)(CI)(R)
   NT AUTHORITY\NETWORK SERVICE:(OI)(CI)(R)
   NT AUTHORITY\SYSTEM:(OI)(CI)(F)

Successfully processed 1 files; Failed processing 0 files



[2009-11-13 12:02:05] paj...@php.net

Pls run:

icacls D:\wwwroot\testcom\

icacls D:\wwwroot\testcom\www\

and past the result here. So we can try to reproduce your problem with
the same settings.




[2009-11-13 11:41:32] be3ch at centrum dot cz

Sorry, PHP 5.3.0 VC9 x86 Non Thread Safe - same problem.

Non-TS version of PHP not working correctly when on webroot directory
are only READ NTFS permissions. It's working only with READ+EXECUTE.



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/50163

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



#39616 [Bgs]: gzuncompress() data error

2009-11-20 Thread emanuele at fondani dot it
 ID:   39616
 User updated by:  emanuele at fondani dot it
 Reported By:  emanuele at fondani dot it
 Status:   Bogus
 Bug Type: Zlib Related
-Operating System: Windows
+Operating System: Windows/Linux
-PHP Version:  4.4.4
+PHP Version:  4.*, 5.*
 New Comment:

I found that the issue is due to the fact that in some cases in the
gzipped pdf stream the zlib stream header (see RFC 1950) is missing or
invalid, and the gzuncompress() function cannot decompress data.

Here's my workaround to fix the problem: I wrote a new ZlibDecompress
class in PHP from some original C++ code by Mark Adler taken from the
official zlib site, which uses the standard algorithm and always
decompress the string correctly, ignoring the zlib stream header, as it
contains only CRC data. 
Obviously this PHP class is much more slower than gzuncompress
function, because it is not compiled, so I use it only when gzuncompress
fails. For pdf files this happens only in a few cases, so this is a good
compromise for me.

If anyone is interested please contact me by email and I will send the
class file.


Previous Comments:


[2006-11-27 12:07:53] m...@php.net

There's a suggested link in tony2001's message.  Mailing lists and
newsgroups are usually good support channels.



[2006-11-24 12:36:09] emanuele at fondani dot it

Please be more specific. Where can I get more information about this
problem?
What are the "support channels" you mean? Can you suggest a link?

Thank you



[2006-11-24 12:24:15] tony2...@php.net

Sorry, but your problem does not imply a bug in PHP itself.  For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system is not the
appropriate forum for asking support questions.  Due to the volume
of reports we can not explain in detail here why your report is not
a bug.  The support channels will be able to provide an explanation
for you.

Thank you for your interest in PHP.





[2006-11-24 12:07:30] emanuele at fondani dot it

Description:

PHP reports data error on function gzuncompress() when decompressing a
particular gzipped string (see Reproduce code).

Reproduce code:
---


Expected result:

BT
/F1 1 Tf
10.4608 0 0 10.4608 761.5243 1299.7671 Tm
0 g
/GS1 gs
0 Tc
0 Tw
(Latina Oggi)Tj
-8.0578 -1.4286 TD
(Mercoledì 22 Novembre 2006)Tj
/F2 1 Tf
24.9066 0 0 24.9066 25.5063 1285.2018 Tm
(26)Tj
ET
0 G
0 J 0 j 1.021 w 10 M []0 d
1 i 
25.506 1317.202 m
815.021 1317.202 l
S
2.979 w 
25.506 1273.366 m
815.02 1273.366 l
S
BT
/F3 1 Tf
22.9141 0 0 22.9141 268.9982 1284.7036 Tm
-0.0217 Tc
[(M.S.BIA)35(GIO )]TJ
/F2 1 Tf
29.8879 0 0 29.8879 387.9349 1284.7036 Tm
-0.0167 Tc
(FONDI )Tj
/F3 1 Tf
22.9141 0 0 22.9141 490.0532 1284.7036 Tm
-0.0217 Tc
(LENOLA)Tj
ET
0.5 G
428.844 1096.031 250.735 -729.265 re
S
0 G
1.021 w 
695.245 710.477 m
815.021 710.477 l
695.245 365.272 m
815.021 365.272 l
25.506 710.477 m
413.178 710.477 l
25.506 365.272 m
413.178 365.272 l
S
0.7 g
753.474 982.457 61.546 -10.461 re
f
0.3 G
427.349 208.36 m
494.322 208.36 l
427.349 208.36 m
427.349 114.213 l
427.35 114.213 m
480.153 114.213 l
S
0.3 g
469.692 124.674 10.461 -10.461 re
f
BT
/F2 1 Tf
23.9103 0 0 23.9103 159.9113 1237.7397 Tm
0 g
-0.0282 Tw
[(Il gruppo consiliar)18(e «F)25(ondi V)37(i)10(v)10(a» è sul piede di
guerra)]TJ
/F4 1 Tf
57.4446 0 0 61.7684 253.06 1180.9526 Tm
-0.053 Tc
-0.0078 Tw
[(«Raccolta rif)19.9(iuti,)]TJ
-0.8947 -0.9839 TD
(gestione poco chiara»)Tj
10.672 0 0 10.3611 25.5063 1149.8295 Tm
0.1124 Tc
0.2495 Tw
[(RA)39.7(CCOL)91.5(T)92.4(A)0( RIFIUTI,)]TJ
0 -1.0096 TD
-0.0084 Tc
0.269 Tw
(scuola ed incarichi esterni:)Tj
T*
0.1027 Tw
[(sono questi)-344.2(i temi)-344.2(per cui)-344.2(il)]TJ
T*
-0.0216 Tw
[(gruppo consigliare di «F)14.8(ondi)]TJ
T*
-0.0039 Tw
[(vi)24.8(v)24.8(a» si prepara a dare batta)-8.4(-)]TJ
T*
0.1454 Tw
(glia in Consiglio comunale.)Tj
T*
0.1453 Tw
(In vista dell’assise cittadina)Tj
T*
0.1935 Tw
[(che)-435(si terrà)-435(v)14.8(enerdì sera,)-435(il)]TJ
T*
0.0246 Tw
[(gruppo di minoranza ha pre)-8.4(-)]TJ
T*
-0.0067 Tc
0.3687 Tw
(sentato all’amministrazione)Tj
T*
-0.0086 Tc
0.2454 Tw
(comunale un’interrogazione)Tj
T*
-0.0084 Tc
0.3539 Tw
[(in cui)-595.4(si chiede)-595.4(maggiore)]TJ
T*
0.1772 Tw
[(chiarezza)-418.7(sulla gestione)-418.7(del)]TJ
T*
-0.0132 Tw
[(servizio di raccolta dei rif)19.9(iuti)]TJ
T*
-0.0784 Tw
[(attualmente appaltato alla so)-8.4(-)]TJ
T*
0.2398 Tw
[(cietà «De V)59.6(izia».)-481.3(«I sotto)-8.4(-)]TJ
T*
-0.0252 Tw
[(scritti Raf)24.8(fele De Bonis, Fer)-8.4(-)]TJ
T*
0.1504 Tw
[(nando)-391.9(Di F)14.8(azio)-391.9(ed)-391.9(Arnaldo)]TJ
T*
0.0127 Tw
[(F)14.8(aiola - si le)14.8(gge nell’int

#47017 [Tbd->Csd]: mysqlnd does not work with MYSQL_CLIENT_COMPRESS flag

2009-11-20 Thread UW
 ID:   47017
 Updated by:   u...@php.net
 Reported By:  surfchen at gmail dot com
-Status:   To be documented
+Status:   Closed
 Bug Type: MySQL related
 Operating System: Any
 PHP Version:  5.3CVS-2009-01-06 (snap)
 New Comment:

This bug has been fixed in the documentation's XML sources. Since the
online and downloadable versions of the documentation need some time
to get updated, we would like to ask you to be a bit patient.

Thank you for the report, and for helping us make our documentation
better.

http://news.php.net/php.doc.cvs/5482


Previous Comments:


[2009-11-20 08:52:39] u...@php.net

mysqlnd now supports the compressed protocol.



[2009-10-09 14:20:02] u...@php.net

The patch is ready and tested. It will be committed once PHP 5.3.1 has
been released.



[2009-02-03 11:52:12] johan...@php.net

MYSQL_CLIENT_COMPRESS, in most cases, costs CPU but doesn't result in a
measurable gain in throughput. It will most likely not be implemented in
mysqlnd till 5.3.0 is released.



[2009-01-19 09:56:17] surfchen at gmail dot com

typo:
there is error,warning => there is no error,warning



[2009-01-08 12:22:35] surfchen at gmail dot com

> Is the bug that the connection cannot be used after setting the flag
or that the compressed protocol is not supported? 
This is can be used for mysql_get_server_info()(maybe this function was
getting these info on connecting) and similar functions,but can't be
used for mysql_query().What's more,when using for mysql_set_charset(),a
large memory was allocated(Fatal error: Allowed memory size of 134217728
bytes exhausted (tried to allocate 807601282 bytes)),It's so
strange.(memory problem is another topic, sorry for explaining here.)


> Do you use the compression and how does it make your application run
faster? 
I can't follow your meaning.This question seems not related to our
topic.

> Is your MySQL server on the local network or remote?
I have tested both unix socket and tcp in my box.No "network".And my
mysql server have compression enabled(it need to be enable?I forget.).It
can be connected and used with php ext/mysql driven by lib libmysql with
the MYSQL_CLIENT_COMPRESS.so it's not a server problem.

Let me desc more detail.

I don't know mysqlnd how to link and use compression lib,but I have
compile with "./configure --with-mysql=mysqlnd --with-zlib
--with-zlib-dir=/usr/local" and I can see "ZLib Support => enabled" in
php -i(means that the zlib dir are correct.), and During the
compilation,there is error ,warning or notice tell me that "you was
doing incorrectly".

This bug is raised whether enable zts or not.



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/47017

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



#50237 [NEW]: [PATCH] - Enable correct behaviour when building PHP6 with Sun's compilers

2009-11-20 Thread yoarvi at gmail dot com
From: yoarvi at gmail dot com
Operating system: Solaris 5.10 (SPARC)
PHP version:  6SVN-2009-11-20 (SVN)
PHP Bug Type: *Compile Issues
Bug description:  [PATCH] - Enable correct behaviour when building PHP6 with 
Sun's compilers 

Description:

The Sun Studio compilers don't seem to like it when a vararg is passed
as a zstr union and then retrieved as a (UChar *). Specifying
class_name.v instead of class_name to php_printf fixes the problem.
This doesn't seem to be a problem on Ubuntu/gcc.

Based on feedback
(http://forums.sun.com/thread.jspa?threadID=5415962&tstart=00) from
the Sun compiler folks, it seems that the following patch is necessary
for PHP6 (trunk).

http://bitbucket.org/arvi/arviq/src/tip/svn-zstr-varargs-patch.txt

Reproduce code:
---
http://marc.info/?l=php-internals&m=125802929326277&w=2 is the relevant
mail thread on internals.

Expected result:

Tests such as tests/classes/__set__get_001.php should pass when executed
using a PHP built with Sun Studio's compilers.

Actual result:
--
Lots of test failures on Solaris.

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



#50078 [Com]: [PATCH] file upload fails with thttpd

2009-11-20 Thread asure007 at hotmail dot com
 ID:   50078
 Comment by:   asure007 at hotmail dot com
 Reported By:  nishantkumar05 at gmail dot com
 Status:   Open
 Bug Type: Other web server
 Operating System: ubuntu 8.10
 PHP Version:  5.3.0
 New Comment:

I've grabbed that patch and edited it back into something i could use,
but it won't work for me. Can you upload it somewhere to wget ?

The error i get:
patch:  malformed patch at line 100:  static char
*sapi_thttpd_read_cookies(TSRMLS_D)


Previous Comments:


[2009-11-04 15:36:09] nishantkumar05 at gmail dot com

This is the patch available.
=
diff -Nur php-5.3.0/sapi/thttpd/thttpd.c php-
5.3.0_mod/sapi/thttpd/thttpd.c
--- php-5.3.0/sapi/thttpd/thttpd.c  2008-12-31 03:15:49.0 
-0800
+++ php-5.3.0_mod/sapi/thttpd/thttpd.c  2009-11-02 19:02:28.0 
-0800
@@ -64,6 +64,9 @@
 #define TG(v) (thttpd_globals.v)
 #endif
 
+
+int read_pending_content( void ); 
+
 static int sapi_thttpd_ub_write(const char *str, uint str_length 
TSRMLS_DC)
 {
int n;
@@ -247,16 +250,77 @@
 
 static int sapi_thttpd_read_post(char *buffer, uint count_bytes 
TSRMLS_DC)
 {
-   size_t read_bytes = 0;
+   size_t read_bytes = 0, send2php_bytes = 0 ;
+   size_t buff_bytes = TG(hc)->read_idx - TG(hc)->checked_idx ;
 
-   if (TG(unconsumed_length) > 0) {
-   read_bytes = MIN(TG(unconsumed_length), count_bytes);
-   memcpy(buffer, TG(hc)->read_buf + TG(hc)->checked_idx, 
read_bytes);
-   TG(unconsumed_length) -= read_bytes;
-   CONSUME_BYTES(read_bytes);
+
+   if ( buff_bytes > 0 ) {
+   /*we might already have some bytes in read_buf to be 
sent to php module*/
+   read_bytes = buff_bytes;
+   }else if ( TG(hc)->contentlength > 0 ){
+   read_bytes=read_pending_content();  
+   }
+
+   if ( read_bytes ) {
+   send2php_bytes = MIN ( read_bytes, 
count_bytes);
+   memcpy(buffer, TG(hc)->read_buf + TG(hc)-
>checked_idx, send2php_bytes);
+   TG(hc)->contentlength -= send2php_bytes;
+   /*bringing the read_idx back to checked_idx, 
so we have more room to read
+ the pending bytes from connection*/
+   if ( send2php_bytes == read_bytes ) {
+   TG(hc)->read_idx = TG(hc)->checked_idx 
;
+   } else {
+   /*memmove is costly: but for small 
devices we cant increase the buffer
+ size substantially. presuming that 
memmove doesnt use extra buffer
+ internally*/
+   memmove(TG(hc)->read_buf + TG(hc)-
>checked_idx, 
+   TG(hc)-
>read_buf + TG(hc)->checked_idx + send2php_bytes ,
+   read_bytes-
count_bytes);
+   TG(hc)->read_idx = TG(hc)->checked_idx 
+ ( read_bytes - count_bytes )  ;
+   }
+
+   TG(unconsumed_length) -= send2php_bytes;
}
-   
-   return read_bytes;
+
+   return send2php_bytes;
+}
+
+
+/*
+ * Read the max possible (limited by the available buffer ) pending 
data
+ * from the network. hc->contenlength has been used to tell about the

+ * pending data to be read from the network, hence onus is on the 
caller
+ * to modify it accordingly.
+ * It starts reading from checked_idx and updates the read_idx after 
reading.
+ * -nishant
+ * */
+int read_pending_content( void ) 
+{
+   int avail_buf= TG(hc)->read_size - TG(hc)->read_idx; 
+   int act_to_read=0,total_read=0,ctr=0;
+
+
+   if ( TG(hc)->contentlength < avail_buf ){
+   act_to_read = TG(hc)->contentlength;
+   } else {
+   act_to_read = avail_buf - 2;
+   }
+
+   while(total_read != act_to_read)
+   {
+   ctr = read(TG(hc)->conn_fd, &(TG(hc)->read_buf[TG(hc)-
>checked_idx]), act_to_read );
+   if(ctr < 0){
+   if( ( errno == EINTR ) || ( errno == EAGAIN ) 
){
+   continue;
+   }else{
+   break;
+   }
+   }
+   total_read += ctr;
+   }
+
+   TG(hc)->read_idx += total_read;
+   return total_read;
 }
 
 static char *sapi_thttpd_read_cookies(TSRMLS_D)
@@ -663,12 +727,14 @@
hc->do_keep_alive = 0;
}

+#if 0
+   /*Its ok to have unconsumed bytes. We will consum in read_post 
function*/
if (hc->contentlength != -1
&& SIZEOF_UNCONSUMED_BYTES() < hc-
>contentlength) {
hc->read_body_into_mem = 1

#50205 [Fbk->Bgs]: Can't start Apache 2.2.14 with PHP 5.2.11

2009-11-20 Thread pajoye
 ID:   50205
 Updated by:   paj...@php.net
 Reported By:  vladmu at mail dot ru
-Status:   Feedback
+Status:   Bogus
 Bug Type: Apache2 related
 Operating System: win32 only - Windows XP
 PHP Version:  5.2.11
 New Comment:

Configuration error, ask on php-setup for support.


Previous Comments:


[2009-11-18 14:23:53] j...@php.net

Please try using this snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/

..and remove ALL old dlls and stuff before you do this..



[2009-11-17 17:22:35] vladmu at mail dot ru

Description:

There is a error from windows event viewer:

Faulting application httpd.exe, version 2.2.14.0, faulting module
php5ts.dll, version 5.2.11.11, fault address 0x000f330d.

Steps to reproduce:

1. Install Apache 2.2.14
2. Stop Apache 2.2 service
3. Install PHP 5.2.11 and select web server Apache 2.2 with defining
config path
4. Run Apache 2.2 service







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



#50238 [NEW]: [PATCH] - Using #defines to improve the performance of the TSRMG macro

2009-11-20 Thread yoarvi at gmail dot com
From: yoarvi at gmail dot com
Operating system: Solaris 5.10 (SPARC)
PHP version:  6SVN-2009-11-20 (SVN)
PHP Bug Type: Performance problem
Bug description:  [PATCH] - Using #defines to improve the performance of the 
TSRMG macro

Description:

When compiled for multi-threaded (#ifdef ZTS ) operation, the various
subsystems in PHP use dynamically allocated (ts_allocate_id)
identifiers to index into the thread-local storage for each subsystem.
These dynamically allocated ids are used by macros such as CG, EG, PG,
AG.

The TSRMG macro is defined as:
#define TSRMG(id, type, element)(((type) (*((void ***)
tsrm_ls))[TSRM_UNSHUFFLE_RSRC_ID(id)])->element)

The PG macro is defined as:
# define PG(v) TSRMG(core_globals_id, php_core_globals *, v)

where core_globals_id is
extern PHPAPI int core_globals_id;

cc -E of
PG(connection_status) = PHP_CONNECTION_ABORTED;
translates to:
 (((php_core_globals *) (*((void ***)
tsrm_ls))[((core_globals_id)-1)])->connection_status) = 1;

and cc -S of the same code results in:
.loc 1 108 0
movl%ebx, %eax
sublcore_globals_id, %eax
movl(%esi), %edx
sall$2, %eax
negl%eax
movl(%edx,%eax), %eax
movw$1, 144(%eax)

I used fixed IDs instead of dynamically allocated ones and noticed a
decent improvement in performance (few percentage points) when
running a web-based ecommerce-site workload on SPARC CMT hardware.

With my changes the PG macro is defined as:
# define PG(v) TSRMG(CORE_GLOBALS_ID, php_core_globals *, v)

#define CORE_GLOBALS_ID 10

and core_globals_id is
extern PHPAPI const ts_rsrc_id core_globals_id;

cc -E of the same line of code translates to:
 (((php_core_globals *) (*((void ***)
tsrm_ls))[((10)-1)])->connection_status) = 1;

cc -S (my version):
.loc 1 108 0
movl(%eax), %eax
movl36(%eax), %eax
movw$1, 144(%eax)

The relevant discussion can be found here:
http://marc.info/?l=php-internals&m=125742200330841&w=2

Reproduce code:
---
The following patch implements this and incorporates the feedback received
on internals: 

http://bitbucket.org/arvi/arviq/src/tip/arvi-16-ts_allocate_reserved_id

Expected result:

Improved performance when PHP is compiled with support for
multi-threading.


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



#50224 [Bgs]: json_encode() does not always encode a float as a float

2009-11-20 Thread christian dot lawrence at calorieking dot com
 ID:  50224
 User updated by: christian dot lawrence at calorieking dot com
 Reported By: christian dot lawrence at calorieking dot com
 Status:  Bogus
 Bug Type:JSON related
 PHP Version: 5.2SVN-2009-11-19 (snap)
 New Comment:

And there lines the problem - there is no way to express the fractional
part if json_encode() does not even deal with it in the first place.

An integer and an integer represented as a floating point number are
not the same thing because they have different types, as follows:


Numerically they have the same value, but we all know this to be true:


There is always a fractional part of any integer when it is represented
as a floating point number.  It is implied and can, simply, be expressed
by appending a ".0" to the integer part.  There is nothing in the JSON
encoding rules on http://www.json.org/ which disallows this (see "int
frac" form for specifics).

Decoding a valid and legitimate encoding of an integer when it is
represented as a floating point number gives the correct PHP floating
point type:


Decoding an integer-encoded stream also gives the correct PHP integer
type:


I fail to see how my bug report is bogus when json_encode() is unable
to produce a perfectly valid and legitimate encoding yet json_decode()
is capable of doing the right thing.

Surely, the json_encode() implementation must be identifying the data
type being encoded, presumably it is using equivalents for is_object()
and is_array().  Why not use equivalents for is_int() or is_float() as
well?

A reliable data interchange format should not purport to do any
type-casting from the primitive types it was provided for encoding.  ie:
If you encode a float then you should expect to decode a float.  As far
as I am concerned json_encode() is un-reliable and fails to encode my
float, which I have confirmed in my results.

I humbly ask that you reconsider your position.


Previous Comments:


[2009-11-19 15:12:56] j...@php.net

Yes, IF you were passing fractional part. But you're not. See the
output of var_dump($f) in your results..



[2009-11-19 09:14:05] christian dot lawrence at calorieking dot com

Take a look at the format for "number" at http://www.json.org/ and
observe the form for a "int frac".  This clearly indicates that there is
support for representing a floating point number, even integer floats.

The json_encode() function clearly supports encoding of floating point
numbers.  json_decode() is capable of deserialising "12.0" as a integer
floating point number.

If you encode a floating point number, then one should expect to decode
a floating point number.

If json_encode()/json_decode() is to be used as a serious and reliable
data exchange format, then there should be no loss or conversion of
primitive type information.

Please re-consider.



[2009-11-19 08:51:56] j...@php.net

There's is just "number" type in JSON for numbers. And as such, this is
working just like it should and PHP tries it's best at guessing what
type the numbers might be.



[2009-11-19 05:45:10] christian dot lawrence at calorieking dot com

Description:

json_encode()-ing an integer when it is represented as floating point
number results in a change of type when json_decode() decodes the
output.

Examples of such floating point numbers are: -123.0, -1.0, 0.0, 1.0,
123.0

Reproduce code:
---



Expected result:

float(12.3)
string(4) "12.3"
float(12.3)

int(12)
string(2) "12"
int(12)

float(12)
string(4) "12.0"
float(12)

float(0)
string(3) "0.0"
float(0)


Actual result:
--
float(12.3)
string(4) "12.3"
float(12.3)

int(12)
string(2) "12"
int(12)

float(12)
string(2) "12"
int(12)

float(0)
string(1) "0"
int(0)






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



#48810 [Com]: Variable Function Request

2009-11-20 Thread a at b dot c dot de
 ID:   48810
 Comment by:   a at b dot c dot de
 Reported By:  moonlightcheese at gmail dot com
 Status:   Open
 Bug Type: Feature/Change Request
 Operating System: Ubuntu
 PHP Version:  5.2.10
 New Comment:

Uh, you can already do that


Previous Comments:


[2009-07-05 20:38:17] moonlightcheese at gmail dot com

Description:

the use of constructs would be nice.  i don't see a reason why i
shouldn't be able to do something like this:

$db_prefix="mysql_";
$conn_func=$db_prefix."connect";

$conn_func('localhost','example','password');

having to build wrapper functions for every construct i want to use
within a class bloats the code and makes things less manageable.

Reproduce code:
---
---
>From manual page: functions.variable-functions
---







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



#48810 [Opn->Bgs]: Variable Function Request

2009-11-20 Thread pajoye
 ID:   48810
 Updated by:   paj...@php.net
 Reported By:  moonlightcheese at gmail dot com
-Status:   Open
+Status:   Bogus
 Bug Type: Feature/Change Request
 Operating System: Ubuntu
 PHP Version:  5.2.10
 New Comment:

Read the PHP Manual please.


Previous Comments:


[2009-11-20 10:40:37] a at b dot c dot de

Uh, you can already do that



[2009-07-05 20:38:17] moonlightcheese at gmail dot com

Description:

the use of constructs would be nice.  i don't see a reason why i
shouldn't be able to do something like this:

$db_prefix="mysql_";
$conn_func=$db_prefix."connect";

$conn_func('localhost','example','password');

having to build wrapper functions for every construct i want to use
within a class bloats the code and makes things less manageable.

Reproduce code:
---
---
>From manual page: functions.variable-functions
---







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



#50163 [Opn]: IUSR_ NTFS permissions issue on PHP 5.2.11-nts

2009-11-20 Thread pajoye
 ID:   50163
 Updated by:   paj...@php.net
 Reported By:  be3ch at centrum dot cz
 Status:   Open
 Bug Type: Filesystem function related
 Operating System: win32 only - Windows 2003 Server
 PHP Version:  5.2.11
 Assigned To:  pajoye
 New Comment:

I fail to reproduce this problem. No matter the OS or configuration,
using 5.3 or 5.2.


Previous Comments:


[2009-11-20 08:42:15] be3ch at centrum dot cz

Any progress? :)



[2009-11-14 08:48:38] be3ch at centrum dot cz

open_basedir and include_path are for every case same :

open_basedir = D:\wwwroot\testcom;D:\tmp\System;D:\tmp\Php
include_path = .;D:\wwwroot\testcom\www;D:\wwwroot\testcom

If open_basedir is disabled (empty), result of test script with
relative path is : bool(false) . Result with full path is correctly :
bool(true).



[2009-11-14 02:34:44] ksin...@php.net

Can you paste the value of include_path directive
(ini_get('include_path')) for each of the cases? Given that fullpath to
file works with just read permissions tell that relative path test.php
is getting resolved to some other path which is outside open_basedir.
Strange that adding execute permission make it resolve to a different
path.



[2009-11-13 12:15:32] be3ch at centrum dot cz

D:\wwwroot>icacls D:\wwwroot\testcom\
D:\wwwroot\testcom\ NT AUTHORITY\SYSTEM:(OI)(CI)(F)
NT AUTHORITY\NETWORK SERVICE:(OI)(CI)(R)
BUILTIN\Administrators:(OI)(CI)(F)
TEST_SERVER\G6FTPUser:(OI)(CI)(R,W,D,DC)
TEST_SERVER\IUSR_testcom:(OI)(CI)(R)

Successfully processed 1 files; Failed processing 0 files

D:\wwwroot>icacls D:\wwwroot\testcom\www
D:\wwwroot\testcom\www BUILTIN\Administrators:(OI)(CI)(F)
   TEST_SERVER\G6FTPUser:(OI)(CI)(R,W,D,DC)
   TEST_SERVER\IUSR_testcom:(OI)(CI)(R)
   NT AUTHORITY\NETWORK SERVICE:(OI)(CI)(R)
   NT AUTHORITY\SYSTEM:(OI)(CI)(F)

Successfully processed 1 files; Failed processing 0 files



[2009-11-13 12:02:05] paj...@php.net

Pls run:

icacls D:\wwwroot\testcom\

icacls D:\wwwroot\testcom\www\

and past the result here. So we can try to reproduce your problem with
the same settings.




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/50163

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



#50194 [Opn]: With some fonts, letters are overlapped with imagettftext

2009-11-20 Thread fa
 ID:   50194
 Updated by:   f...@php.net
 Reported By:  stanislav at ww9 dot ru
 Status:   Open
 Bug Type: GD related
 Operating System: Windows
 PHP Version:  5.2.11
 New Comment:

Reproduced with PHP5.3.1RC3 on Ubuntu LTS

I tend to blame the font.


Previous Comments:


[2009-11-16 20:55:55] stanislav at ww9 dot ru

Description:

Just wanted to write a text on an image with tranperent image and got 
strange result. Writing text on an image using some true type fonts
like this one http://ww9.ru/zeferinotwo.ttf causes letters to overlap
each other like here http://ww9.ru/test.php

Reproduce code:
---
// Set the content-type
header('Content-type: image/png');

// Create the image
//$im = imagecreatefromjpeg('./user/images/tpls/headbg.jpg');
$im = imagecreatetruecolor(400, 100);

// Create some colors
$background = imagecolorallocatealpha($im, 60, 60, 60, 127);
$black = imagecolorallocate($im, 0, 0, 0);


imagealphablending($im, false);

imagefilledrectangle($im, 0, 0, 399, 99, $background);

// The text to draw
$text = 'Tesing ... ';
// Replace path by your own font path
$font = './zeferinotwo.ttf';

// Add the text
imagettftext($im, 40, 0, 10, 40, $black, $font, $text);

imagesavealpha($im, true);
imagepng($im);
imagedestroy($im);

Expected result:

The text "Tesing ..." written on an image

Actual result:
--
http://ww9.ru/test.php





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



#50194 [Opn->Asn]: With some fonts, letters are overlapped with imagettftext

2009-11-20 Thread pajoye
 ID:   50194
 Updated by:   paj...@php.net
 Reported By:  stanislav at ww9 dot ru
-Status:   Open
+Status:   Assigned
 Bug Type: GD related
 Operating System: Windows
 PHP Version:  5.2.11
-Assigned To:  
+Assigned To:  pajoye
 New Comment:

I have to try them :)


Previous Comments:


[2009-11-20 11:34:02] f...@php.net

Reproduced with PHP5.3.1RC3 on Ubuntu LTS

I tend to blame the font.



[2009-11-16 20:55:55] stanislav at ww9 dot ru

Description:

Just wanted to write a text on an image with tranperent image and got 
strange result. Writing text on an image using some true type fonts
like this one http://ww9.ru/zeferinotwo.ttf causes letters to overlap
each other like here http://ww9.ru/test.php

Reproduce code:
---
// Set the content-type
header('Content-type: image/png');

// Create the image
//$im = imagecreatefromjpeg('./user/images/tpls/headbg.jpg');
$im = imagecreatetruecolor(400, 100);

// Create some colors
$background = imagecolorallocatealpha($im, 60, 60, 60, 127);
$black = imagecolorallocate($im, 0, 0, 0);


imagealphablending($im, false);

imagefilledrectangle($im, 0, 0, 399, 99, $background);

// The text to draw
$text = 'Tesing ... ';
// Replace path by your own font path
$font = './zeferinotwo.ttf';

// Add the text
imagettftext($im, 40, 0, 10, 40, $black, $font, $text);

imagesavealpha($im, true);
imagepng($im);
imagedestroy($im);

Expected result:

The text "Tesing ..." written on an image

Actual result:
--
http://ww9.ru/test.php





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



#50223 [WFx]: foreach() affects array pointer unexpectedly (different between PHP versions)

2009-11-20 Thread disposable_address at kennel17 dot co dot uk
 ID:   50223
 User updated by:  disposable_address at kennel17 dot co dot uk
 Reported By:  disposable_address at kennel17 dot co dot uk
 Status:   Wont fix
 Bug Type: Scripting Engine problem
 Operating System: Windows
 PHP Version:  5.2.11
 New Comment:

If this is a known problem, why is it a wontfix?  Surely bugs should be
fixed - that's how things get better!

Calling reset() within a foreach loop (as suggested in that notice) is
not possible, because then it will be reset on every iteration.  The
only (completely un-intuitive) solution is therefore to have an extra
variable to track whether this is the first iteration of the loop, and
only reset() it in that instance.

However, it is not clear whether even this method is 'safe'.

Perhaps there should be a big bold notice on the next()/current()/etc.
pages that says DO NOT USE THESE FUNCTIONS INSIDE ANY LOOPING CONSTRUCT,
AS THEY DO NOT WORK.

Perhaps you should also follow that up with "THIS IS NOT BY DESIGN, BUT
NONETHELESS WE DON'T PLAN ON FIXING THE PROBLEM", just to avoid
confusion.

Or even better, fix it, and note the versions of PHP where it doesn't
work as expected.  Maybe in PHP6?  After all, you are trying to improve
the language, aren't you?


Previous Comments:


[2009-11-19 11:14:27] col...@php.net

This is a known "problem":

php.net/foreach : "foreach  has some side effects on the array pointer.
Don't rely on the array pointer during or after the foreach without
resetting it." 



[2009-11-18 23:44:27] disposable_address at kennel17 dot co dot uk

Description:

The array pointer does not behave in the expected manner within a
foreach() loop.  What's more, the behaviour differs between PHP4 and
PHP5.



Reproduce code:
---
$arr = array(1, 2, 3);

end($arr);

var_dump(current($arr));
foreach ($arr as $Item) {
print("Item " . $Item . " - ");
var_dump(current($arr));
}

var_dump(current($arr));


Expected result:

EITHER the array pointer IS NOT affected by the loop:

  int(3)
  Item 1 - int(3)
  Item 2 - int(3)
  Item 3 - int(3)
  int(3)

OR the array point IS affected by the loop:

  int(3)
  Item 1 - int(1)
  Item 2 - int(2)
  Item 3 - int(3)
  int(2)

I am not sure which is best, but it seems to me that any other
behaviour is incorrect.

Actual result:
--
In PHP4 (4.4.9):

  int(3)
  Item 1 - int(1)
  Item 2 - int(1)
  Item 3 - int(1)
  int(1)

In PHP5 (5.2.10)

  int(3)
  Item 1 - int(2)
  Item 2 - int(2)
  Item 3 - int(2)
  int(2)

Both of these seem wrong, but the fact that they are different seems
doubly wrong!  Calling reset() before the foreach() loop doesn't make
any difference.  The PHP4 version seems more acceptable (it sets it to
the first element on entry, and then doesn't affect it at all), however
the PHP5 behaviour just seems absurd.

Note: The described behaviour is the same on Windows Vista and Windows
XP.





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



#50194 [Asn]: With some fonts, letters are overlapped with imagettftext

2009-11-20 Thread fa
 ID:   50194
 Updated by:   f...@php.net
 Reported By:  stanislav at ww9 dot ru
 Status:   Assigned
 Bug Type: GD related
 Operating System: Windows
 PHP Version:  5.2.11
 Assigned To:  pajoye
 New Comment:

It works with 5.2.6-1+lenny3 from Debian.

Broken as well in 5.3.1 (php.net) on Debian lenny


Previous Comments:


[2009-11-20 11:35:32] paj...@php.net

I have to try them :)



[2009-11-20 11:34:02] f...@php.net

Reproduced with PHP5.3.1RC3 on Ubuntu LTS

I tend to blame the font.



[2009-11-16 20:55:55] stanislav at ww9 dot ru

Description:

Just wanted to write a text on an image with tranperent image and got 
strange result. Writing text on an image using some true type fonts
like this one http://ww9.ru/zeferinotwo.ttf causes letters to overlap
each other like here http://ww9.ru/test.php

Reproduce code:
---
// Set the content-type
header('Content-type: image/png');

// Create the image
//$im = imagecreatefromjpeg('./user/images/tpls/headbg.jpg');
$im = imagecreatetruecolor(400, 100);

// Create some colors
$background = imagecolorallocatealpha($im, 60, 60, 60, 127);
$black = imagecolorallocate($im, 0, 0, 0);


imagealphablending($im, false);

imagefilledrectangle($im, 0, 0, 399, 99, $background);

// The text to draw
$text = 'Tesing ... ';
// Replace path by your own font path
$font = './zeferinotwo.ttf';

// Add the text
imagettftext($im, 40, 0, 10, 40, $black, $font, $text);

imagesavealpha($im, true);
imagepng($im);
imagedestroy($im);

Expected result:

The text "Tesing ..." written on an image

Actual result:
--
http://ww9.ru/test.php





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



#50240 [NEW]: pdo_mysql.default_socket in php.ini shouldn't used if it's empty

2009-11-20 Thread foutrelis at gmail dot com
From: foutrelis at gmail dot com
Operating system: Arch Linux
PHP version:  5.3.1
PHP Bug Type: PDO related
Bug description:  pdo_mysql.default_socket in php.ini shouldn't used if it's 
empty

Description:

When pdo_mysql.default_socket in php.ini is empty, it shouldn't be used
and pdo_mysql should fallback to PDO_MYSQL_UNIX_ADDR.

It appears that OnUpdateStringUnempty should be used in the related
STD_PHP_INI_ENTRY definition in ext/pdo_mysql/pdo_mysql.c, instead of
OnUpdateString. Also, OnUpdateStringUnempty is used by the mysql and mysqli
extensions for their default_socket directives, so it makes sense to use it
here as well.

Proposed patch: http://bugs.archlinux.org/task/17179?getfile=4430


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



#50241 [NEW]: Crash in gmp_init() function of php_gmp

2009-11-20 Thread Brian dot White at foxfire74 dot com
From: Brian dot White at foxfire74 dot com
Operating system: Windows XP XP3
PHP version:  5.3.1
PHP Bug Type: Reproducible crash
Bug description:  Crash in gmp_init() function of php_gmp

Description:

Did the compiler options for GMP change between 5.3.0 and 5.3.1?  The code
below executes properly in 5.3.0; but crashes when run using 5.3.1,
however, the stack traces (attached) are uninformative.  Crash happens as
both an Apache2.2 module as well as CLI.  Crash does NOT happen on Core 2
Duo (Family 6, Model F, Stepping B), only on Pentium III EB(Family 6, Model
8, Stepping 6).  php_gmp on Windows usus MIPR which supports x86 processors
as old as the Pentium depending on how it was compiled.

Reproduce code:
---



Expected result:

resource(4) of type (GMP integer)


Actual result:
--
Apache 2.2 Backtrace

Thread 148 - System ID 396
Entry point   msvcr90!_endthreadex+6f 
Create time   11/20/2009 5:20:47 AM 
Time spent in user mode   0 Days 0:0:8.502 
Time spent in kernel mode   0 Days 0:0:0.711 

Function Arg 1 Arg 2 Arg 3   Source 
php_gmp!__gmpn_mul_1+1a 0681d1d8 0681d1d8 0001
php_gmp!__gmpn_set_str+11d 0681d1d8 0682e970 0135
php_gmp!__gmpz_set_str+1af 053691c8 0682e828 000a
php_gmp!__gmpz_init_set_str+2d 053691c8 0682e828 000a
php_gmp!zm_info_gmp+147 041ff988 000a 04832af0
php_gmp!zif_gmp_init+7c 0002 0682b7b8 
php5ts!execute+1110 05374270 04832a00 04832af0
php5ts!execute+583a  041ffae0 04832af0
php5ts!execute+2e8 04a3c148 04832a01 04832af0
php5ts!zend_call_function+884  041ffacc 05371e08
php5ts!zif_call_user_func_array+63 0002 05367188  
  
php5ts!execute+1110 05371e08 04832a00 04832af0
php5ts!execute+583a 04832af0 041ffbe4 
php5ts!execute+2e8 0533e2e8 04832a00 04832af0
php5ts!zend_execute_scripts+fe 0008 04832af0 
php5ts!php_execute_script+239 041ffe70 04832af0 0005
php5apache2_2!zm_info_apache+1744 047b5b60 012522c8 047b5b60  
 
libhttpd!ap_run_handler+25   

In
httpd__PID__5396__Date__11_20_2009__Time_05_25_09AM__793__Second_Chance_Exception_C01D.dmp
the assembly instruction at php_gmp!__gmpn_mul_1+1a in
C:\PHP\ext\php_gmp.dll from The PHP Group has caused an unknown exception
(0xc01d) on thread 148

CLI Backtrace
=
Thread 0 - System ID 4656
Entry point   php+2fa2 
Create time   11/20/2009 7:00:15 AM 
Time spent in user mode   0 Days 0:0:1.181 
Time spent in kernel mode   0 Days 0:0:0.340 

Function Arg 1 Arg 2 Arg 3   Source 
php_gmp!get_module+c85a 0114e7a0 0114e7a0 0001
php_gmp!get_module+15e0d 0114fc48 0004 0088
php_gmp!get_module+c08d 0114e7a0 0114ea10 0135
php_gmp!get_module+b82f 0114fc18 0114e8c8 000a
php_gmp!get_module+53ad   

In
php__PID__440__Date__11_20_2009__Time_07_00_22AM__370__Second_Chance_Exception_C01D.dmp
the assembly instruction at php_gmp!get_module+c85a in
C:\TEMP\PHP\ext\php_gmp.dll from The PHP Group has caused an unknown
exception (0xc01d) on thread 0


-- 
Edit bug report at http://bugs.php.net/?id=50241&edit=1
-- 
Try a snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=50241&r=trysnapshot52
Try a snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=50241&r=trysnapshot53
Try a snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=50241&r=trysnapshot60
Fixed in SVN:
http://bugs.php.net/fix.php?id=50241&r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=50241&r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=50241&r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=50241&r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=50241&r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=50241&r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=50241&r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=50241&r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=50241&r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=50241&r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=50241&r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=50241&r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=50241&r=dst
IIS Stability:   
http://b

#50241 [Opn->Bgs]: Crash in gmp_init() function of php_gmp

2009-11-20 Thread pajoye
 ID:   50241
 Updated by:   paj...@php.net
 Reported By:  Brian dot White at foxfire74 dot com
-Status:   Open
+Status:   Bogus
 Bug Type: Reproducible crash
 Operating System: Windows XP XP3
 PHP Version:  5.3.1
 New Comment:

The only difference between 5.3.0 and 5.3.1 is that we use ASM in
MPIR.

PIII is not on our tests matrix, niether it is on the MPIR one. I'll
try to create a C example and report this bug to the MPIR project. But
that's not a PHP bug per se (> bogus).


Previous Comments:


[2009-11-20 12:40:56] Brian dot White at foxfire74 dot com

Description:

Did the compiler options for GMP change between 5.3.0 and 5.3.1?  The
code below executes properly in 5.3.0; but crashes when run using 5.3.1,
however, the stack traces (attached) are uninformative.  Crash happens
as both an Apache2.2 module as well as CLI.  Crash does NOT happen on
Core 2 Duo (Family 6, Model F, Stepping B), only on Pentium III
EB(Family 6, Model 8, Stepping 6).  php_gmp on Windows usus MIPR which
supports x86 processors as old as the Pentium depending on how it was
compiled.

Reproduce code:
---



Expected result:

resource(4) of type (GMP integer)


Actual result:
--
Apache 2.2 Backtrace

Thread 148 - System ID 396
Entry point   msvcr90!_endthreadex+6f 
Create time   11/20/2009 5:20:47 AM 
Time spent in user mode   0 Days 0:0:8.502 
Time spent in kernel mode   0 Days 0:0:0.711 

Function Arg 1 Arg 2 Arg 3   Source 
php_gmp!__gmpn_mul_1+1a 0681d1d8 0681d1d8 0001
php_gmp!__gmpn_set_str+11d 0681d1d8 0682e970 0135
php_gmp!__gmpz_set_str+1af 053691c8 0682e828 000a
php_gmp!__gmpz_init_set_str+2d 053691c8 0682e828 000a  
 
php_gmp!zm_info_gmp+147 041ff988 000a 04832af0
php_gmp!zif_gmp_init+7c 0002 0682b7b8 
php5ts!execute+1110 05374270 04832a00 04832af0
php5ts!execute+583a  041ffae0 04832af0
php5ts!execute+2e8 04a3c148 04832a01 04832af0
php5ts!zend_call_function+884  041ffacc 05371e08   

php5ts!zif_call_user_func_array+63 0002 05367188

php5ts!execute+1110 05371e08 04832a00 04832af0
php5ts!execute+583a 04832af0 041ffbe4 
php5ts!execute+2e8 0533e2e8 04832a00 04832af0
php5ts!zend_execute_scripts+fe 0008 04832af0   
 
php5ts!php_execute_script+239 041ffe70 04832af0 0005   

php5apache2_2!zm_info_apache+1744 047b5b60 012522c8
047b5b60
libhttpd!ap_run_handler+25   

In
httpd__PID__5396__Date__11_20_2009__Time_05_25_09AM__793__Second_Chance_Exception_C01D.dmp
the assembly instruction at php_gmp!__gmpn_mul_1+1a in
C:\PHP\ext\php_gmp.dll from The PHP Group has caused an unknown
exception (0xc01d) on thread 148

CLI Backtrace
=
Thread 0 - System ID 4656
Entry point   php+2fa2 
Create time   11/20/2009 7:00:15 AM 
Time spent in user mode   0 Days 0:0:1.181 
Time spent in kernel mode   0 Days 0:0:0.340 

Function Arg 1 Arg 2 Arg 3   Source 
php_gmp!get_module+c85a 0114e7a0 0114e7a0 0001
php_gmp!get_module+15e0d 0114fc48 0004 0088
php_gmp!get_module+c08d 0114e7a0 0114ea10 0135
php_gmp!get_module+b82f 0114fc18 0114e8c8 000a
php_gmp!get_module+53ad   

In
php__PID__440__Date__11_20_2009__Time_07_00_22AM__370__Second_Chance_Exception_C01D.dmp
the assembly instruction at php_gmp!get_module+c85a in
C:\TEMP\PHP\ext\php_gmp.dll from The PHP Group has caused an unknown
exception (0xc01d) on thread 0






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



#50190 [Fbk->Opn]: need libtool >=1.5.26

2009-11-20 Thread ralphdoncaster at gmail dot com
 ID:   50190
 User updated by:  ralphdoncaster at gmail dot com
 Reported By:  ralphdoncaster at gmail dot com
-Status:   Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: AIX 5.3
 PHP Version:  5.2.11
 New Comment:

I don't have gnu diff installed, but I think the diff is a red herring
anyway; we know it's the difference between 1.5.20 & 1.5.26.

I think the issue may be the version of autoconf used to build the
distribution configure script(if libtool is included as part of
autoconf, which I'm not so sure it is).  Since the date stamp for 1.5.26
is 2008/01/30, if autoconf 2.61 or earlier was used to build configure,
it can't have included libtool 1.5.26.  build/buildcheck.sh only
requires autoconf 2.13 or newer.

If autoconf just uses the version of libtool installed on the
distribution build box, then maybe changing libtool.m4:1236 might work:
need_version=no
to:
need_version=1.5.26
might work.

I tried rebuilding configure (I have autoconf 2.59 and no libtool
installed).  The libtool that was created after running configure was
still 1.5.20. here's what I ran:
autoconf
./configure
./libtool --version


Previous Comments:


[2009-11-17 09:14:09] j...@php.net

How about a 'diff -u' between the PHP libtool and Apache libtool?



[2009-11-16 17:11:32] ralphdoncaster at gmail dot com

configure generates the libtool script, so after running configure I
replaced it with the newer version that comes with apache2.
lrwxrwxrwx1 root system   32 Nov 13 13:19 libtool ->
/usr/local/apache2/build/libtool

I have no experience with autoconf, and my only m4 experience is from a
bit of sendmail twiddling.  When I searched the bugs db I saw some
references to libtool getting included with autoconf, so whoever did
that would probably be able to create a patch much easier than I could.



[2009-11-16 16:12:05] j...@php.net

Exactly how did you replace it? If you have a patch, feel free to
provide one. See build/libtool.m4 for more..



[2009-11-16 14:49:48] ralphdoncaster at gmail dot com

Description:

libtool 1.5.20 is bundled with PHP.  This version does not copy
libphp5.so on make install.
libtool 1.5.26 works properly

This seems to have already been reported as bug #48427, but was closed
as bogus (nobody realized the problem is with libtool, not gnu ld)


Reproduce code:
---
./configure --with-apxs2=/usr/local/apache2/bin/apxs
make install


Expected result:

libphp5.so should get copied to apache2 modules dir


Actual result:
--
it fails

I replaced libtool 1.5.20 with 1.5.26 from the apache2 build, then make
install works fine.

bash-3.2# ./libtool --version
ltmain.sh (GNU libtool) 1.5.26 (1.1220.2.492 2008/01/30 06:40:56)

Copyright (C) 2008  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
bash-3.2# ./libtool.old/libtool --version
ltmain.sh (GNU libtool) 1.5.20 (1.1220.2.287 2005/08/31 18:54:15)

Copyright (C) 2005  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.






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



#50190 [Opn]: need libtool >=1.5.26

2009-11-20 Thread ralphdoncaster at gmail dot com
 ID:   50190
 User updated by:  ralphdoncaster at gmail dot com
 Reported By:  ralphdoncaster at gmail dot com
 Status:   Open
 Bug Type: Apache2 related
 Operating System: AIX 5.3
 PHP Version:  5.2.11
 New Comment:

I tried it again with need_version=1.5.26 and it makes no difference.


Previous Comments:


[2009-11-20 13:02:46] ralphdoncaster at gmail dot com

I don't have gnu diff installed, but I think the diff is a red herring
anyway; we know it's the difference between 1.5.20 & 1.5.26.

I think the issue may be the version of autoconf used to build the
distribution configure script(if libtool is included as part of
autoconf, which I'm not so sure it is).  Since the date stamp for 1.5.26
is 2008/01/30, if autoconf 2.61 or earlier was used to build configure,
it can't have included libtool 1.5.26.  build/buildcheck.sh only
requires autoconf 2.13 or newer.

If autoconf just uses the version of libtool installed on the
distribution build box, then maybe changing libtool.m4:1236 might work:
need_version=no
to:
need_version=1.5.26
might work.

I tried rebuilding configure (I have autoconf 2.59 and no libtool
installed).  The libtool that was created after running configure was
still 1.5.20. here's what I ran:
autoconf
./configure
./libtool --version



[2009-11-17 09:14:09] j...@php.net

How about a 'diff -u' between the PHP libtool and Apache libtool?



[2009-11-16 17:11:32] ralphdoncaster at gmail dot com

configure generates the libtool script, so after running configure I
replaced it with the newer version that comes with apache2.
lrwxrwxrwx1 root system   32 Nov 13 13:19 libtool ->
/usr/local/apache2/build/libtool

I have no experience with autoconf, and my only m4 experience is from a
bit of sendmail twiddling.  When I searched the bugs db I saw some
references to libtool getting included with autoconf, so whoever did
that would probably be able to create a patch much easier than I could.



[2009-11-16 16:12:05] j...@php.net

Exactly how did you replace it? If you have a patch, feel free to
provide one. See build/libtool.m4 for more..



[2009-11-16 14:49:48] ralphdoncaster at gmail dot com

Description:

libtool 1.5.20 is bundled with PHP.  This version does not copy
libphp5.so on make install.
libtool 1.5.26 works properly

This seems to have already been reported as bug #48427, but was closed
as bogus (nobody realized the problem is with libtool, not gnu ld)


Reproduce code:
---
./configure --with-apxs2=/usr/local/apache2/bin/apxs
make install


Expected result:

libphp5.so should get copied to apache2 modules dir


Actual result:
--
it fails

I replaced libtool 1.5.20 with 1.5.26 from the apache2 build, then make
install works fine.

bash-3.2# ./libtool --version
ltmain.sh (GNU libtool) 1.5.26 (1.1220.2.492 2008/01/30 06:40:56)

Copyright (C) 2008  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
bash-3.2# ./libtool.old/libtool --version
ltmain.sh (GNU libtool) 1.5.20 (1.1220.2.287 2005/08/31 18:54:15)

Copyright (C) 2005  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.






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



#19302 [Com]: Invalid access to memory location

2009-11-20 Thread machhi_c_m at yahoo dot com
 ID:   19302
 Comment by:   machhi_c_m at yahoo dot com
 Reported By:  phpteam at vip dot sina dot com
 Status:   No Feedback
 Bug Type: IIS related
 Operating System: win200 adv server
 PHP Version:  4.2.2
 New Comment:

Please refer to the link below: 
http://technosharepoint.blogspot.com/


Previous Comments:


[2008-07-24 10:59:25] minhduan at newsplus dot com dot vn

dfsdf



[2008-05-16 19:44:29] awakennow at bellsouth dot net

Solution:

I checked the ISAPI filter section of IIS admin and found php still
pointing there to the okd version.  I had change it in the configuration
settings.

Once both the filter and the configuration mappings were pointed to
php5isapi.dll the sites worked.



[2008-05-16 19:16:02] awakennow at bellsouth dot net

I'm having the same problem.  IIS XP sp2 php 5.2.5.

I had a 4.x version running (4.7) I think, then upgraded ot 5.2.5 by
copying the 5.2.5 files to a directory, pointing IIS to the new php dll
and setting the path the the new directory.

It worked fine a week or so ago.  Now, I get the "Invalid access to
memory" error.

If I reboot, then phpinfo() will run once.  I haven't refeshed it
immediately, but if I try to run any other php file I get the same
error.

Incidentally, the second php test file I've been running contains only
html, so it isn't a fucntion call or any other DLL that php loads that
is causing this.



[2008-01-23 05:49:08] shaileshkumardas at gmail dot com

I am facing the same problem. I uninstalled the older 5.x version and I
installed PHP 5.2.5 via msi installer. MySQL
essential-5.0.27-win32.msiwas already installed . I added the
extension=php_mysql.dll in php.ini file. Also checked the windows path
which was correct . When i loaded test.php it displayed the error
"Invalid access to memory location" after restarting my pc and emtying
the session and temp dir it displayed the PHP info page and it shows
"Loaded Configuration File (none)".



[2007-10-27 15:16:50] woud at skynet dot be

I have the sam problem. I installed PHP and the test.php or info.php
worked fine. I installed MySQL and before starting tha install, I tested
again the info.php... -> now I'mg getting this acces problem.
I used the latest version of PHP and MySQL.
I use WinXP-Prof , IIS 5.1.
Thanks for helping me!
Joske



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/19302

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



#50172 [Com]: Unable to communicate with the MySQL server service

2009-11-20 Thread ferd352+php at gmail dot com
 ID:   50172
 Comment by:   ferd352+php at gmail dot com
 Reported By:  erik at navhost dot com
 Status:   Assigned
 Bug Type: MySQL related
 Operating System: win32 only - Win. Server 2008 R2
 PHP Version:  5.3.1RC4
 Assigned To:  mysql
 New Comment:

I'm having the same issue, along with other problems, trying to upgrade
from PHP 5.2 to 5.3 (VC9)

Just tried 5.3.1 on Win2k8_R2 IIS7.5 and I have to change "localhost"
to "127.0.0.1" in my scripts even though the hosts file already has the
entry 127.0.0.1


Previous Comments:


[2009-11-20 00:56:56] avivahl at gmail dot com

This bug still exists in the final 5.3.1 release. :-(
Reproduced here using Windows 7 w/ IIS 7.5 (FastCGI is used w/
Non-Thread-Safe php).
The workaround suggested by erik (editing hosts file) works for me.

Btw, PHP 5.3.0 (final) did not have this issue.



[2009-11-18 22:54:54] carsten_sttgt at gmx dot de

> So I guess this is a windows bug rather than PHP?

No, it's a bug in the PHP stream transport. (mysqlnd is using PHP
streams for the connection)

-->
If PHP is asking the OS for the IP for the host "localhost", it gets a
list with 2 addrinfo structures (one for ::1 and the other for
127.0.0.1), but PHP is only trying a connection to the first one. Well,
the MySQL server don't know IPV6, and thus the connection fails.

Regards,
Carsten



[2009-11-14 20:07:21] erik at navhost dot com

A simple workaround is to uncomment/add this line to the host file:
127.0.0.1localhost

Worked for me.



[2009-11-14 16:39:41] paj...@php.net

I mean Bug #45150. But it looks like you may have met another issue.
Assigned to the mysql team so they can for more details.



[2009-11-14 15:58:37] erik at navhost dot com

Looking into it further, the comment from pajoye fixes the issue in the
vista-based Server 2008. However, Server 2008 R2 is based on Windows 7
and introduces a new feature on the resolving localhost... see from the
hosts file:

"localhost name resolution is handled within DNS itself."

So I guess this is a windows bug rather than PHP? I can't see an easy
solution here either way.



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/50172

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



#50242 [NEW]: Creating a DateTime object causes error_get_last() return value to reset

2009-11-20 Thread jussi at growvc dot com
From: jussi at growvc dot com
Operating system: Linux
PHP version:  5.2.11
PHP Bug Type: Date/time related
Bug description:  Creating a DateTime object causes error_get_last() return 
value to reset

Description:

It seems that calling the DateTime class constructor causes an error
accumulated in error_get_last() to be cleared.

I am using a 64bit Linux (Ubuntu 9.10) with PHP 5.2.11 built by
dotdeb.org (unfortunately phpinfo() of their version doesn't give up
configure options). The problem reproduces with a default php.ini,
both as Apache module and on CLI.

I was also able do reproduce this on another system with another PHP
version (5.2.9, also a dotdeb build).

Reproduce code:
---
@trigger_error('foo');
echo (is_array(error_get_last())?'Error':'No error') . "\n";

$dt = new DateTime();
echo (is_array(error_get_last())?'Error':'No error') . "\n";

Expected result:

Error
Error


Actual result:
--
Error
No error


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



#50172 [Com]: Unable to communicate with the MySQL server service

2009-11-20 Thread ferd352+php at gmail dot com
 ID:   50172
 Comment by:   ferd352+php at gmail dot com
 Reported By:  erik at navhost dot com
 Status:   Assigned
 Bug Type: MySQL related
 Operating System: win32 only - Win. Server 2008 R2
 PHP Version:  5.3.1RC4
 Assigned To:  mysql
 New Comment:

Sorry, I seemed to miss the message above about commenting out the
"::1" line, which when I did resolved the issue.


Previous Comments:


[2009-11-20 13:14:56] ferd352+php at gmail dot com

I'm having the same issue, along with other problems, trying to upgrade
from PHP 5.2 to 5.3 (VC9)

Just tried 5.3.1 on Win2k8_R2 IIS7.5 and I have to change "localhost"
to "127.0.0.1" in my scripts even though the hosts file already has the
entry 127.0.0.1



[2009-11-20 00:56:56] avivahl at gmail dot com

This bug still exists in the final 5.3.1 release. :-(
Reproduced here using Windows 7 w/ IIS 7.5 (FastCGI is used w/
Non-Thread-Safe php).
The workaround suggested by erik (editing hosts file) works for me.

Btw, PHP 5.3.0 (final) did not have this issue.



[2009-11-18 22:54:54] carsten_sttgt at gmx dot de

> So I guess this is a windows bug rather than PHP?

No, it's a bug in the PHP stream transport. (mysqlnd is using PHP
streams for the connection)

-->
If PHP is asking the OS for the IP for the host "localhost", it gets a
list with 2 addrinfo structures (one for ::1 and the other for
127.0.0.1), but PHP is only trying a connection to the first one. Well,
the MySQL server don't know IPV6, and thus the connection fails.

Regards,
Carsten



[2009-11-14 20:07:21] erik at navhost dot com

A simple workaround is to uncomment/add this line to the host file:
127.0.0.1localhost

Worked for me.



[2009-11-14 16:39:41] paj...@php.net

I mean Bug #45150. But it looks like you may have met another issue.
Assigned to the mysql team so they can for more details.



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/50172

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



#50190 [Opn->Fbk]: need libtool >=1.5.26

2009-11-20 Thread jani
 ID:   50190
 Updated by:   j...@php.net
 Reported By:  ralphdoncaster at gmail dot com
-Status:   Open
+Status:   Feedback
 Bug Type: Apache2 related
 Operating System: AIX 5.3
 PHP Version:  5.2.11
 New Comment:

Yes, I know all this. I really need the diff between the libtool that
gets generated with stock PHP (which didn't work for you) and the
libtool your replaced it with. Can you do this or not? If you can, put
it to pastebin.com and submit the url here..


Previous Comments:


[2009-11-20 13:10:54] ralphdoncaster at gmail dot com

I tried it again with need_version=1.5.26 and it makes no difference.



[2009-11-20 13:02:46] ralphdoncaster at gmail dot com

I don't have gnu diff installed, but I think the diff is a red herring
anyway; we know it's the difference between 1.5.20 & 1.5.26.

I think the issue may be the version of autoconf used to build the
distribution configure script(if libtool is included as part of
autoconf, which I'm not so sure it is).  Since the date stamp for 1.5.26
is 2008/01/30, if autoconf 2.61 or earlier was used to build configure,
it can't have included libtool 1.5.26.  build/buildcheck.sh only
requires autoconf 2.13 or newer.

If autoconf just uses the version of libtool installed on the
distribution build box, then maybe changing libtool.m4:1236 might work:
need_version=no
to:
need_version=1.5.26
might work.

I tried rebuilding configure (I have autoconf 2.59 and no libtool
installed).  The libtool that was created after running configure was
still 1.5.20. here's what I ran:
autoconf
./configure
./libtool --version



[2009-11-17 09:14:09] j...@php.net

How about a 'diff -u' between the PHP libtool and Apache libtool?



[2009-11-16 17:11:32] ralphdoncaster at gmail dot com

configure generates the libtool script, so after running configure I
replaced it with the newer version that comes with apache2.
lrwxrwxrwx1 root system   32 Nov 13 13:19 libtool ->
/usr/local/apache2/build/libtool

I have no experience with autoconf, and my only m4 experience is from a
bit of sendmail twiddling.  When I searched the bugs db I saw some
references to libtool getting included with autoconf, so whoever did
that would probably be able to create a patch much easier than I could.



[2009-11-16 16:12:05] j...@php.net

Exactly how did you replace it? If you have a patch, feel free to
provide one. See build/libtool.m4 for more..



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/50190

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



#50194 [Com]: With some fonts, letters are overlapped with imagettftext

2009-11-20 Thread stanislav at ww9 dot ru
 ID:   50194
 Comment by:   stanislav at ww9 dot ru
 Reported By:  stanislav at ww9 dot ru
 Status:   Assigned
 Bug Type: GD related
 Operating System: Windows
 PHP Version:  5.2.11
 Assigned To:  pajoye
 New Comment:

I don't think it's a font problem.
It draws text well when 
-the background tranparency is swiched off
-alphablending is set to true
-savealpha is set to false

Here is the modifed code:




Previous Comments:


[2009-11-20 11:42:17] f...@php.net

It works with 5.2.6-1+lenny3 from Debian.

Broken as well in 5.3.1 (php.net) on Debian lenny



[2009-11-20 11:35:32] paj...@php.net

I have to try them :)



[2009-11-20 11:34:02] f...@php.net

Reproduced with PHP5.3.1RC3 on Ubuntu LTS

I tend to blame the font.



[2009-11-16 20:55:55] stanislav at ww9 dot ru

Description:

Just wanted to write a text on an image with tranperent image and got 
strange result. Writing text on an image using some true type fonts
like this one http://ww9.ru/zeferinotwo.ttf causes letters to overlap
each other like here http://ww9.ru/test.php

Reproduce code:
---
// Set the content-type
header('Content-type: image/png');

// Create the image
//$im = imagecreatefromjpeg('./user/images/tpls/headbg.jpg');
$im = imagecreatetruecolor(400, 100);

// Create some colors
$background = imagecolorallocatealpha($im, 60, 60, 60, 127);
$black = imagecolorallocate($im, 0, 0, 0);


imagealphablending($im, false);

imagefilledrectangle($im, 0, 0, 399, 99, $background);

// The text to draw
$text = 'Tesing ... ';
// Replace path by your own font path
$font = './zeferinotwo.ttf';

// Add the text
imagettftext($im, 40, 0, 10, 40, $black, $font, $text);

imagesavealpha($im, true);
imagepng($im);
imagedestroy($im);

Expected result:

The text "Tesing ..." written on an image

Actual result:
--
http://ww9.ru/test.php





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



#50194 [Com]: With some fonts, letters are overlapped with imagettftext

2009-11-20 Thread stanislav at ww9 dot ru
 ID:   50194
 Comment by:   stanislav at ww9 dot ru
 Reported By:  stanislav at ww9 dot ru
 Status:   Assigned
 Bug Type: GD related
 Operating System: Windows
 PHP Version:  5.2.11
 Assigned To:  pajoye
 New Comment:

Sorry, imagesavealpha has no effect on a result


Previous Comments:


[2009-11-20 14:15:11] stanislav at ww9 dot ru

I don't think it's a font problem.
It draws text well when 
-the background tranparency is swiched off
-alphablending is set to true
-savealpha is set to false

Here is the modifed code:





[2009-11-20 11:42:17] f...@php.net

It works with 5.2.6-1+lenny3 from Debian.

Broken as well in 5.3.1 (php.net) on Debian lenny



[2009-11-20 11:35:32] paj...@php.net

I have to try them :)



[2009-11-20 11:34:02] f...@php.net

Reproduced with PHP5.3.1RC3 on Ubuntu LTS

I tend to blame the font.



[2009-11-16 20:55:55] stanislav at ww9 dot ru

Description:

Just wanted to write a text on an image with tranperent image and got 
strange result. Writing text on an image using some true type fonts
like this one http://ww9.ru/zeferinotwo.ttf causes letters to overlap
each other like here http://ww9.ru/test.php

Reproduce code:
---
// Set the content-type
header('Content-type: image/png');

// Create the image
//$im = imagecreatefromjpeg('./user/images/tpls/headbg.jpg');
$im = imagecreatetruecolor(400, 100);

// Create some colors
$background = imagecolorallocatealpha($im, 60, 60, 60, 127);
$black = imagecolorallocate($im, 0, 0, 0);


imagealphablending($im, false);

imagefilledrectangle($im, 0, 0, 399, 99, $background);

// The text to draw
$text = 'Tesing ... ';
// Replace path by your own font path
$font = './zeferinotwo.ttf';

// Add the text
imagettftext($im, 40, 0, 10, 40, $black, $font, $text);

imagesavealpha($im, true);
imagepng($im);
imagedestroy($im);

Expected result:

The text "Tesing ..." written on an image

Actual result:
--
http://ww9.ru/test.php





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



#50243 [NEW]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread pontus dot alexander at gmail dot com
From: pontus dot alexander at gmail dot com
Operating system: Debian
PHP version:  5.3SVN-2009-11-20 (snap)
PHP Bug Type: Reproducible crash
Bug description:  Second attempt after successful file_put_contents to FTP 
causes crash

Description:

After one successful write to FTP via file_put_contents (or fopen, fwrite,
fclose) the next attempt causes PHP to die with message "Segmentation
fault".

Reproduce code:
---
ftp://foo:b...@domain.com/";;

$unique = uniqid();

$items = array(
'foo',
'bar'
);

$i = 0;
foreach($items as $content) {
$filename = $location . sprintf("File_%s_%03u.txt", $unique, $i++);
file_put_contents($filename, $content); // Crash on _second_ successful
iteration
}

Expected result:

Two files placed on FTP-server successfully containing foo and bar
respectively.

Actual result:
--
First file writes fine. At second iteration file_put_contents causes PHP
to die.

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



#50244 [NEW]: getopt() does not reset

2009-11-20 Thread craig dot marvelley at boxuk dot com
From: craig dot marvelley at boxuk dot com
Operating system: Windows XP
PHP version:  5.3.1
PHP Bug Type: Feature/Change Request
Bug description:  getopt() does not reset

Description:

A bug that has been reported and fixed in the past regarding getopt not 
resetting after being called once has resurfaced.

Here's the original bug: http://bonsai.php.net/bug.php?id=29714

The same behaviour is happening in 5.3.1 - once getopt has been called, 
subsequent calls ignore options not included in the original call.



Reproduce code:
---
> php test.php -d hello -b world

 hello
)

Array 
(
[b] => world
)

Actual result:
--
Array 
(
[d] => hello
)

Array 
(
)

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



#50238 [Opn->Ana]: [PATCH] - Using #defines to improve the performance of the TSRMG macro

2009-11-20 Thread rasmus
 ID:   50238
 Updated by:   ras...@php.net
 Reported By:  yoarvi at gmail dot com
-Status:   Open
+Status:   Analyzed
 Bug Type: Performance problem
 Operating System: Solaris 5.10 (SPARC)
 PHP Version:  6SVN-2009-11-20 (SVN)
 New Comment:

It seems silly that this would make a difference.  I guess make the
change in trunk.  Can't do it in the branches because it would break
binary compatibility.


Previous Comments:


[2009-11-20 10:29:03] yoarvi at gmail dot com

Description:

When compiled for multi-threaded (#ifdef ZTS ) operation, the various
subsystems in PHP use dynamically allocated (ts_allocate_id)
identifiers to index into the thread-local storage for each subsystem.
These dynamically allocated ids are used by macros such as CG, EG, PG,
AG.

The TSRMG macro is defined as:
#define TSRMG(id, type, element)(((type) (*((void ***)
tsrm_ls))[TSRM_UNSHUFFLE_RSRC_ID(id)])->element)

The PG macro is defined as:
# define PG(v) TSRMG(core_globals_id, php_core_globals *, v)

where core_globals_id is
extern PHPAPI int core_globals_id;

cc -E of
PG(connection_status) = PHP_CONNECTION_ABORTED;
translates to:
 (((php_core_globals *) (*((void ***)
tsrm_ls))[((core_globals_id)-1)])->connection_status) = 1;

and cc -S of the same code results in:
.loc 1 108 0
movl%ebx, %eax
sublcore_globals_id, %eax
movl(%esi), %edx
sall$2, %eax
negl%eax
movl(%edx,%eax), %eax
movw$1, 144(%eax)

I used fixed IDs instead of dynamically allocated ones and noticed a
decent improvement in performance (few percentage points) when
running a web-based ecommerce-site workload on SPARC CMT hardware.

With my changes the PG macro is defined as:
# define PG(v) TSRMG(CORE_GLOBALS_ID, php_core_globals *, v)

#define CORE_GLOBALS_ID 10

and core_globals_id is
extern PHPAPI const ts_rsrc_id core_globals_id;

cc -E of the same line of code translates to:
 (((php_core_globals *) (*((void ***)
tsrm_ls))[((10)-1)])->connection_status) = 1;

cc -S (my version):
.loc 1 108 0
movl(%eax), %eax
movl36(%eax), %eax
movw$1, 144(%eax)

The relevant discussion can be found here:
http://marc.info/?l=php-internals&m=125742200330841&w=2

Reproduce code:
---
The following patch implements this and incorporates the feedback
received on internals: 

http://bitbucket.org/arvi/arviq/src/tip/arvi-16-ts_allocate_reserved_id

Expected result:

Improved performance when PHP is compiled with support for
multi-threading.






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



#50246 [NEW]: Throw exception fails in __autoload() implementation

2009-11-20 Thread krzysztof dot talajko at gmail dot com
From: krzysztof dot talajko at gmail dot com
Operating system: Windows 7 RC
PHP version:  5.2.11
PHP Bug Type: Scripting Engine problem
Bug description:  Throw exception fails in __autoload() implementation

Description:

Throw exception in __autoload() implementation is impossible. Instead
fatal error "Class (...) not found" is reported.

Reproduce code:
---
getMessage().").";
}


Expected result:

Caught load class failed exception (Class Some_Not_Existing_Class not
found).

Actual result:
--
Fatal error: Class 'Some_Not_Existing_Class' not found in
C:\dev\workspace\foo.php on line 19

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



#50246 [Opn]: Throw exception fails in __autoload() implementation

2009-11-20 Thread krzysztof dot talajko at gmail dot com
 ID:   50246
 User updated by:  krzysztof dot talajko at gmail dot com
 Reported By:  krzysztof dot talajko at gmail dot com
 Status:   Open
 Bug Type: Scripting Engine problem
 Operating System: Windows 7 RC
 PHP Version:  5.2.11
 New Comment:

Simpler reproduce code is (results same as in original code):

getMessage().").";
}


Previous Comments:


[2009-11-20 15:58:12] krzysztof dot talajko at gmail dot com

Description:

Throw exception in __autoload() implementation is impossible. Instead
fatal error "Class (...) not found" is reported.

Reproduce code:
---
getMessage().").";
}


Expected result:

Caught load class failed exception (Class Some_Not_Existing_Class not
found).

Actual result:
--
Fatal error: Class 'Some_Not_Existing_Class' not found in
C:\dev\workspace\foo.php on line 19





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



#50247 [NEW]: header "Content-type" instead of "Content-Type"

2009-11-20 Thread yvan dot taviaud at gmail dot com
From: yvan dot taviaud at gmail dot com
Operating system: Linux Debian stable (Lenny)
PHP version:  5.2.11
PHP Bug Type: *General Issues
Bug description:  header "Content-type" instead of "Content-Type"

Description:

When default_mimetype is set (say "text/html"), and no Content-Type header
is sent, PHP adds the following header:
Content-type: text/html

It should send the following instead:
Content-Type: text/html

Reproduce code:
---
Just query a page with  in it, and see the
headers.

Expected result:

Content-Type: text/html

Actual result:
--
Content-type: text/html

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



#31417 [Com]: $HTTP_RAW_POST_DATA but $_POST not populated

2009-11-20 Thread daniel dot kirsch at birgin dot de
 ID:   31417
 Comment by:   daniel dot kirsch at birgin dot de
 Reported By:  j-spam at starline dot ee
 Status:   No Feedback
 Bug Type: CGI related
 Operating System: Linux
 PHP Version:  5.0.3
 New Comment:

I run into the same problem with my ajax application.

When using a XMLHTTPRequest instance I need to provide the data in the
following way:

key=value&anotherkey=anothervalue

So each key/value pair is separated by "&". Additionally I need to
define the correct request header which must be set after opening the
connection and before sending the request:

var postData = "key=value&anotherkey=anothervalue";
var ajax = new XMLHttpRequest();
ajax.open("POST",url,false);
ajax.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded');
ajax.send(postData);

When doing it this way I receive the correct values in $_POST.
$HTTP_RAW_POST_DATA is empty. When not defining the request header
$HTTP_RAW_POST_DATA contains the data and $_POST is empty.


Previous Comments:


[2008-05-22 20:46:34] mgb at matthewbelden dot com

sorry in the previous comment the pattern should be \r\n not just \n



[2008-05-22 18:57:33] mgb at matthewbelden dot com

This workaround did it for me, the above did not.

$pattern = "/\n/";
$replace = "&";
$GLOBALS['HTTP_RAW_POST_DATA'] = preg_replace($pattern, $replace,
$GLOBALS['HTTP_RAW_POST_DATA']);
if (isset($GLOBALS['HTTP_RAW_POST_DATA']) && !count($_POST))
  parse_str($GLOBALS['HTTP_RAW_POST_DATA']  , $_POST);



[2006-05-16 15:23:38] fabiovh at nospammers dot gmail dot com

//workaround

if (isset($GLOBALS['HTTP_RAW_POST_DATA']) && !count($_POST))
  parse_str($GLOBALS['HTTP_RAW_POST_DATA']  , $_POST);



[2006-05-15 14:53:58] baker195 at btinternet dot com

I'm writing an AJAX application and after using the XLMHttpRequest
object to post the data to my server side PHP script, I have to extract
the data from $HTTP_RAW_POST_DATA as $_POST is empty.



[2005-07-18 07:03:55] robbhammack at gmail dot com

I'm also having this issue. $_GET and $HTTP_RAW_POST_DATA are
populated, but $_REQUEST and $_POST are not.
I'm trying to develop an application for php5 but whithout being able
to post form data, I'm going to have to go back to php4 which would be a
real shame.

OS is win2K xp2
PHP Version 5.1.0b3
System  Windows NT MINERVA 5.1 build 2600
Build Date  Jul 14 2005 20:32:24
Configure Command   cscript /nologo configure.js
"--enable-snapshot-build" "--with-gd=shared"
Server API  Apache 2.0 Handler
Virtual Directory Support   enabled
Configuration File (php.ini) Path
C:/Development/programs/php5/php.ini
PHP API 20041225
PHP Extension   20050617
Zend Extension  220050617

Apache Version  Apache/2.0.53 (Win32) PHP/5.1.0b3 DAV/2
Apache API Version  20020903
Loaded Modules  core mod_win32 mpm_winnt http_core mod_so mod_access
mod_actions mod_alias mod_asis mod_auth mod_autoindex mod_cgi mod_dav
mod_dav_fs mod_dir mod_env mod_imap mod_include mod_info mod_isapi
mod_log_config mod_mime mod_negotiation mod_setenvif mod_userdir
mod_php5



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/31417

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



#50248 [NEW]: Segmentation fault during tidy->parseString

2009-11-20 Thread svoboda at tojeono dot cz
From: svoboda at tojeono dot cz
Operating system: Debian lenny
PHP version:  5.3.1
PHP Bug Type: Reproducible crash
Bug description:  Segmentation fault during tidy->parseString

Description:

Hi,
If I compile PHP --with-tidy version from debian lenny libtidy-dev
 20081224cvs-1, I get segementation fault on method
parseString().
My configure command is:
./configure --with-gmp --with-iconv=/usr/local/libiconv-1.11/ --with-imap
--with-imap-ssl --with-interbase  --with-tidy --enable-debug
--with-kerberos

What I found and may be useful:
- If I don't compile it --with-gmp , the segfault doesn't ocur
- If I use libtidy-dev version from debian squeeze, it segfault too
- If I use php version 5.2.8, it segfault too
- If I use libtidy-dev from oldstable debian , the segfault doesn't ocur
- It segfault both in command line and apache (if it's compiled)
- It crash on whatever string - could be empty '', or some longer text

If more info needed, please let me know.

Ondrej

Reproduce code:
---
parseString($text, array(
'output-xhtml' => true,
'show-body-only' => true,
), 'utf8');


Expected result:

some parsed string

Actual result:
--
Segmentation fault

stat64("/dev/urandom", {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...})
= 0
brk(0x85e3000)  = 0x85e3000
munmap(0xb7464000, 266240)  = 0
brk(0x8626000)  = 0x8626000
open("/tmp/file.php", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=138, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0xb7f17000
read(3, "parseString($text, array(\n'output-xhtml' =>
true,\n'show-body-only' => true,\n), 'utf8');\n"..., 4096) = 138
_llseek(3, 0, [0], SEEK_SET)= 0
time(NULL)  = 1258735735
fstat64(0, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(0, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(0, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0xb7f16000
_llseek(0, 0, 0xbfa5240c, SEEK_CUR) = -1 ESPIPE (Illegal seek)
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0xb7f15000
_llseek(1, 0, 0xbfa5240c, SEEK_CUR) = -1 ESPIPE (Illegal seek)
fstat64(2, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(2, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
_llseek(2, 0, 0xbfa5240c, SEEK_CUR) = -1 ESPIPE (Illegal seek)
time(NULL)  = 1258735735
lstat64("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=380, ...}) = 0
lstat64("/tmp/file.php", {st_mode=S_IFREG|0644, st_size=138, ...}) = 0
ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfa504a8) = -1 ENOTTY
(Inappropriate ioctl for device)
read(3, "parseString($text, array(\n'output-xhtml' =>
true,\n'show-body-only' => true,\n), 'utf8');\n"..., 8192) = 138
read(3, ""..., 4096)= 0
read(3, ""..., 8192)= 0
close(3)= 0
munmap(0xb7f17000, 4096)= 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++


-- 
Edit bug report at http://bugs.php.net/?id=50248&edit=1
-- 
Try a snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=50248&r=trysnapshot52
Try a snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=50248&r=trysnapshot53
Try a snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=50248&r=trysnapshot60
Fixed in SVN:
http://bugs.php.net/fix.php?id=50248&r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=50248&r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=50248&r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=50248&r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=50248&r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=50248&r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=50248&r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=50248&r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=50248&r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=50248&r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=50248&r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=50248&r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=50248&r=dst
IIS Stability:   
http://bugs.php.ne

#31417 [NoF]: $HTTP_RAW_POST_DATA but $_POST not populated

2009-11-20 Thread rasmus
 ID:   31417
 Updated by:   ras...@php.net
 Reported By:  j-spam at starline dot ee
 Status:   No Feedback
 Bug Type: CGI related
 Operating System: Linux
 PHP Version:  5.0.3
 New Comment:

Daniel, that's the way it is supposed to work.  By default
$HTTP_RAW_POST_DATA is not populated if we see a known encoding.  With a
known encoding we decode it and populate $_POST.  If you want to force
$HTTP_RAW_POST_DATA to always be populated turn on
always_populate_raw_post_data in your .ini


Previous Comments:


[2009-11-20 16:34:47] daniel dot kirsch at birgin dot de

I run into the same problem with my ajax application.

When using a XMLHTTPRequest instance I need to provide the data in the
following way:

key=value&anotherkey=anothervalue

So each key/value pair is separated by "&". Additionally I need to
define the correct request header which must be set after opening the
connection and before sending the request:

var postData = "key=value&anotherkey=anothervalue";
var ajax = new XMLHttpRequest();
ajax.open("POST",url,false);
ajax.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded');
ajax.send(postData);

When doing it this way I receive the correct values in $_POST.
$HTTP_RAW_POST_DATA is empty. When not defining the request header
$HTTP_RAW_POST_DATA contains the data and $_POST is empty.



[2008-05-22 20:46:34] mgb at matthewbelden dot com

sorry in the previous comment the pattern should be \r\n not just \n



[2008-05-22 18:57:33] mgb at matthewbelden dot com

This workaround did it for me, the above did not.

$pattern = "/\n/";
$replace = "&";
$GLOBALS['HTTP_RAW_POST_DATA'] = preg_replace($pattern, $replace,
$GLOBALS['HTTP_RAW_POST_DATA']);
if (isset($GLOBALS['HTTP_RAW_POST_DATA']) && !count($_POST))
  parse_str($GLOBALS['HTTP_RAW_POST_DATA']  , $_POST);



[2006-05-16 15:23:38] fabiovh at nospammers dot gmail dot com

//workaround

if (isset($GLOBALS['HTTP_RAW_POST_DATA']) && !count($_POST))
  parse_str($GLOBALS['HTTP_RAW_POST_DATA']  , $_POST);



[2006-05-15 14:53:58] baker195 at btinternet dot com

I'm writing an AJAX application and after using the XLMHttpRequest
object to post the data to my server side PHP script, I have to extract
the data from $HTTP_RAW_POST_DATA as $_POST is empty.



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/31417

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



#50243 [Opn->Fbk]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread pierrick
 ID:   50243
 Updated by:   pierr...@php.net
 Reported By:  pontus dot alexander at gmail dot com
-Status:   Open
+Status:   Feedback
 Bug Type: Reproducible crash
 Operating System: Debian
 PHP Version:  5.3SVN-2009-11-20 (snap)
 Assigned To:  pierrick
 New Comment:

Please try using this snapshot:

  http://snaps.php.net/php5.3-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/




Previous Comments:


[2009-11-20 14:32:27] pontus dot alexander at gmail dot com

Description:

After one successful write to FTP via file_put_contents (or fopen,
fwrite, fclose) the next attempt causes PHP to die with message
"Segmentation fault".

Reproduce code:
---
ftp://foo:b...@domain.com/";;

$unique = uniqid();

$items = array(
'foo',
'bar'
);

$i = 0;
foreach($items as $content) {
$filename = $location . sprintf("File_%s_%03u.txt", $unique, $i++);
file_put_contents($filename, $content); // Crash on _second_
successful iteration
}

Expected result:

Two files placed on FTP-server successfully containing foo and bar
respectively.

Actual result:
--
First file writes fine. At second iteration file_put_contents causes
PHP to die.





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



#50248 [Opn->Bgs]: Segmentation fault during tidy->parseString

2009-11-20 Thread jani
 ID:   50248
 Updated by:   j...@php.net
 Reported By:  svoboda at tojeono dot cz
-Status:   Open
+Status:   Bogus
 Bug Type: Reproducible crash
 Operating System: Debian lenny
 PHP Version:  5.3.1
 New Comment:

It's quite obvious this isn't any PHP bug but rather a buggy libtidy
version. Get one that works..


Previous Comments:


[2009-11-20 16:58:38] svoboda at tojeono dot cz

Description:

Hi,
If I compile PHP --with-tidy version from debian lenny libtidy-dev 
20081224cvs-1, I get segementation fault on
method parseString().
My configure command is:
./configure --with-gmp --with-iconv=/usr/local/libiconv-1.11/
--with-imap --with-imap-ssl --with-interbase  --with-tidy --enable-debug
--with-kerberos

What I found and may be useful:
- If I don't compile it --with-gmp , the segfault doesn't ocur
- If I use libtidy-dev version from debian squeeze, it segfault too
- If I use php version 5.2.8, it segfault too
- If I use libtidy-dev from oldstable debian , the segfault doesn't
ocur
- It segfault both in command line and apache (if it's compiled)
- It crash on whatever string - could be empty '', or some longer text

If more info needed, please let me know.

Ondrej

Reproduce code:
---
parseString($text, array(
'output-xhtml' => true,
'show-body-only' => true,
), 'utf8');


Expected result:

some parsed string

Actual result:
--
Segmentation fault

stat64("/dev/urandom", {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9),
...}) = 0
brk(0x85e3000)  = 0x85e3000
munmap(0xb7464000, 266240)  = 0
brk(0x8626000)  = 0x8626000
open("/tmp/file.php", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=138, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7f17000
read(3, "parseString($text, array(\n'output-xhtml' =>
true,\n'show-body-only' => true,\n), 'utf8');\n"..., 4096) = 138
_llseek(3, 0, [0], SEEK_SET)= 0
time(NULL)  = 1258735735
fstat64(0, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(0, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(0, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7f16000
_llseek(0, 0, 0xbfa5240c, SEEK_CUR) = -1 ESPIPE (Illegal seek)
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0xb7f15000
_llseek(1, 0, 0xbfa5240c, SEEK_CUR) = -1 ESPIPE (Illegal seek)
fstat64(2, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
fstat64(2, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 0), ...}) = 0
_llseek(2, 0, 0xbfa5240c, SEEK_CUR) = -1 ESPIPE (Illegal seek)
time(NULL)  = 1258735735
lstat64("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=380, ...}) = 0
lstat64("/tmp/file.php", {st_mode=S_IFREG|0644, st_size=138, ...}) = 0
ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfa504a8) = -1 ENOTTY
(Inappropriate ioctl for device)
read(3, "parseString($text, array(\n'output-xhtml' =>
true,\n'show-body-only' => true,\n), 'utf8');\n"..., 8192) = 138
read(3, ""..., 4096)= 0
read(3, ""..., 8192)= 0
close(3)= 0
munmap(0xb7f17000, 4096)= 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++






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



#50247 [Opn->Fbk]: header "Content-type" instead of "Content-Type"

2009-11-20 Thread jani
 ID:   50247
 Updated by:   j...@php.net
 Reported By:  yvan dot taviaud at gmail dot com
-Status:   Open
+Status:   Feedback
 Bug Type: *General Issues
 Operating System: Linux Debian stable (Lenny)
 PHP Version:  5.2.11
 New Comment:

And what problem is there with that?


Previous Comments:


[2009-11-20 16:30:46] yvan dot taviaud at gmail dot com

Description:

When default_mimetype is set (say "text/html"), and no Content-Type
header is sent, PHP adds the following header:
Content-type: text/html

It should send the following instead:
Content-Type: text/html

Reproduce code:
---
Just query a page with  in it, and see the
headers.

Expected result:

Content-Type: text/html

Actual result:
--
Content-type: text/html





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



#50243 [Fbk]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread rasmus
 ID:   50243
 Updated by:   ras...@php.net
 Reported By:  pontus dot alexander at gmail dot com
 Status:   Feedback
 Bug Type: Reproducible crash
 Operating System: Debian
 PHP Version:  5.3SVN-2009-11-20 (snap)
 Assigned To:  pierrick
 New Comment:

I tested this on an Ubuntu box and was unable to reproduce the crash. 
And under Valgrind it didn't report anything suspicious either.

I assume this is without curlwrappers enabled?  Please list all your
compile flags.


Previous Comments:


[2009-11-20 17:22:12] pierr...@php.net

Please try using this snapshot:

  http://snaps.php.net/php5.3-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/





[2009-11-20 14:32:27] pontus dot alexander at gmail dot com

Description:

After one successful write to FTP via file_put_contents (or fopen,
fwrite, fclose) the next attempt causes PHP to die with message
"Segmentation fault".

Reproduce code:
---
ftp://foo:b...@domain.com/";;

$unique = uniqid();

$items = array(
'foo',
'bar'
);

$i = 0;
foreach($items as $content) {
$filename = $location . sprintf("File_%s_%03u.txt", $unique, $i++);
file_put_contents($filename, $content); // Crash on _second_
successful iteration
}

Expected result:

Two files placed on FTP-server successfully containing foo and bar
respectively.

Actual result:
--
First file writes fine. At second iteration file_put_contents causes
PHP to die.





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



#50246 [Opn->Bgs]: Throw exception fails in __autoload() implementation

2009-11-20 Thread jani
 ID:   50246
 Updated by:   j...@php.net
 Reported By:  krzysztof dot talajko at gmail dot com
-Status:   Open
+Status:   Bogus
 Bug Type: Scripting Engine problem
 Operating System: Windows 7 RC
 PHP Version:  5.2.11
 New Comment:

Thank you for not reading the manual or searching existing bug reports.
RTFM: http://php.net/autoload



Previous Comments:


[2009-11-20 16:05:47] krzysztof dot talajko at gmail dot com

Simpler reproduce code is (results same as in original code):

getMessage().").";
}



[2009-11-20 15:58:12] krzysztof dot talajko at gmail dot com

Description:

Throw exception in __autoload() implementation is impossible. Instead
fatal error "Class (...) not found" is reported.

Reproduce code:
---
getMessage().").";
}


Expected result:

Caught load class failed exception (Class Some_Not_Existing_Class not
found).

Actual result:
--
Fatal error: Class 'Some_Not_Existing_Class' not found in
C:\dev\workspace\foo.php on line 19





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



#50242 [Opn->Asn]: Creating a DateTime object causes error_get_last() return value to reset

2009-11-20 Thread jani
 ID:   50242
 Updated by:   j...@php.net
 Reported By:  jussi at growvc dot com
-Status:   Open
+Status:   Assigned
 Bug Type: Date/time related
-Operating System: Linux
+Operating System: *
-PHP Version:  5.2.11
+PHP Version:  5.2
-Assigned To:  
+Assigned To:  derick
 New Comment:

Happens only in PHP_5_2 branch.


Previous Comments:


[2009-11-20 13:16:28] jussi at growvc dot com

Description:

It seems that calling the DateTime class constructor causes an error
accumulated in error_get_last() to be cleared.

I am using a 64bit Linux (Ubuntu 9.10) with PHP 5.2.11 built by
dotdeb.org (unfortunately phpinfo() of their version doesn't give up
configure options). The problem reproduces with a default php.ini,
both as Apache module and on CLI.

I was also able do reproduce this on another system with another PHP
version (5.2.9, also a dotdeb build).

Reproduce code:
---
@trigger_error('foo');
echo (is_array(error_get_last())?'Error':'No error') . "\n";

$dt = new DateTime();
echo (is_array(error_get_last())?'Error':'No error') . "\n";

Expected result:

Error
Error


Actual result:
--
Error
No error






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



#50247 [Fbk->Csd]: header "Content-type" instead of "Content-Type"

2009-11-20 Thread yvan dot taviaud at gmail dot com
 ID:   50247
 User updated by:  yvan dot taviaud at gmail dot com
 Reported By:  yvan dot taviaud at gmail dot com
-Status:   Feedback
+Status:   Closed
 Bug Type: *General Issues
 Operating System: Linux Debian stable (Lenny)
 PHP Version:  5.2.11
 New Comment:

Hum, I'm sorry, I thought field names where case-sensitive, which is
not according to the RFC
(http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2):
«Field names are case-insensitive»

I'm closing the bug (and I'll have to fix a lot of code...)


Previous Comments:


[2009-11-20 17:51:56] j...@php.net

And what problem is there with that?



[2009-11-20 16:30:46] yvan dot taviaud at gmail dot com

Description:

When default_mimetype is set (say "text/html"), and no Content-Type
header is sent, PHP adds the following header:
Content-type: text/html

It should send the following instead:
Content-Type: text/html

Reproduce code:
---
Just query a page with  in it, and see the
headers.

Expected result:

Content-Type: text/html

Actual result:
--
Content-type: text/html





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



#50247 [Csd->Bgs]: header "Content-type" instead of "Content-Type"

2009-11-20 Thread jani
 ID:   50247
 Updated by:   j...@php.net
 Reported By:  yvan dot taviaud at gmail dot com
-Status:   Closed
+Status:   Bogus
 Bug Type: *General Issues
 Operating System: Linux Debian stable (Lenny)
 PHP Version:  5.2.11
 New Comment:

Yes, never trust them to be in certain case.


Previous Comments:


[2009-11-20 18:03:17] yvan dot taviaud at gmail dot com

Hum, I'm sorry, I thought field names where case-sensitive, which is
not according to the RFC
(http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2):
«Field names are case-insensitive»

I'm closing the bug (and I'll have to fix a lot of code...)



[2009-11-20 17:51:56] j...@php.net

And what problem is there with that?



[2009-11-20 16:30:46] yvan dot taviaud at gmail dot com

Description:

When default_mimetype is set (say "text/html"), and no Content-Type
header is sent, PHP adds the following header:
Content-type: text/html

It should send the following instead:
Content-Type: text/html

Reproduce code:
---
Just query a page with  in it, and see the
headers.

Expected result:

Content-Type: text/html

Actual result:
--
Content-type: text/html





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



#50190 [Fbk->Opn]: need libtool >=1.5.26

2009-11-20 Thread ralphdoncaster at gmail dot com
 ID:   50190
 User updated by:  ralphdoncaster at gmail dot com
 Reported By:  ralphdoncaster at gmail dot com
-Status:   Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: AIX 5.3
 PHP Version:  5.2.11
 New Comment:

OK, even though I think your're going about it the hard way (instead of
just updating the included libtool to >+1.5.26) here's a regular diff
(I'll email you it too):
7c7
< # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
---
> # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007, 2008
53c53
< build_libtool_libs=no
---
> build_libtool_libs=yes
65c65
< fast_install=needless
---
> fast_install=yes
68c68
< host_alias=powerpc-ibm-aix5.3.0.0
---
> host_alias=
86a87,89
> # LTCC compiler flags.
> LTCFLAGS="-g -O2"
> 
94c97
< EGREP="grep -E"
---
> EGREP="/usr/bin/grep -E"
147c150
< max_cmd_len=8192
---
> max_cmd_len=18432
171c174
< link_static_flag="-static"
---
> link_static_flag=""
193c196
< library_names_spec="\${libname}\${release}.a \$libname.a"
---
> library_names_spec="\${libname}\${release}\${shared_ext}\$versuffix
\${libname}\${release}\${shared_ext}\$major \$libname\${shared_ext}"
196c199
< soname_spec="\${libname}\${release}\${shared_ext}\$major"
---
> soname_spec=""
200,201c203,204
< old_archive_cmds="\$AR \$AR_FLAGS
\$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib"
< old_postinstall_cmds="\$RANLIB \$oldlib~chmod 644 \$oldlib"
---
> old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB
\$oldlib"
> old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$oldlib"
212c215
< archive_expsym_cmds="\$CC -shared -o \$output_objdir/\$soname
\$libobjs \$deplibs \$compiler_flags \${wl}-bE:\$export_symbols
\${wl}-bnoentry\${allow_undefined_flag}~\$AR \$AR_FLAGS
\$output_objdir/\$libname\$release.a \$output_objdir/\$soname"
---
> archive_expsym_cmds="\$CC -o \$output_objdir/\$soname \$libobjs
\$deplibs \${wl}-bnoentry \$compiler_flags \\\`if test
\\\"x\${allow_undefined_flag}\\\" != \\\"x\\\"; then echo
\\\"\${wl}\${allow_undefined_flag}\\\"; else :; fi\\\`
\${wl}-bexport:\$export_symbols -shared \${wl}-G"
239a243,246
> # The directories searched by this compiler when creating a shared
> # library
> compiler_lib_search_dirs=""
> 
251c258
< allow_undefined_flag=" \${wl}-berok"
---
> allow_undefined_flag="-berok"
254c261
< no_undefined_flag=" \${wl}-bernotok"
---
> no_undefined_flag=""
316c323
< variables_saved_for_relink="PATH   GCC_EXEC_PREFIX COMPILER_PATH
LIBRARY_PATH"
---
> variables_saved_for_relink="PATH LIBPATH  GCC_EXEC_PREFIX
COMPILER_PATH LIBRARY_PATH"
322c329
< sys_lib_search_path_spec="
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/
/usr/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../../../powerpc-ibm-aix5.3.0.0/lib/powerpc-ibm-aix5.3.0.0/4.2.0/
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../../../powerpc-ibm-aix5.3.0.0/lib/
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../../powerpc-ibm-aix5.3.0.0/4.2.0/
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../../
/lib/powerpc-ibm-aix5.3.0.0/4.2.0/ /lib/
/usr/lib/powerpc-ibm-aix5.3.0.0/4.2.0/ /usr/lib/"
---
>
sys_lib_search_path_spec="/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0
/opt/freeware/lib /lib /usr/lib"
340c347
< exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
---
> exclude_expsyms="_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*"
350,351c357,358
< # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
< # Free Software Foundation, Inc.
---
> # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
2006,
> # 2007, 2008  Free Software Foundation, Inc.
392,393c399,400
< VERSION=1.5.20
< TIMESTAMP=" (1.1220.2.287 2005/08/31 18:54:15)"
---
> VERSION=1.5.26
> TIMESTAMP=" (1.1220.2.492 2008/01/30 06:40:56)"
395,397c402,408
< # See if we are running on zsh, and set the options which allow our
< # commands through without removal of \ escapes.
< if test -n "${ZSH_VERSION+set}" ; then
---
> # Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
> if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1;
then
>   emulate sh
>   NULLCMD=:
>   # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
>   # is contrary to our usage.  Disable this feature.
>   alias -g '${1+"$@"}'='"$@"'
398a410,411
> else
>   case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
399a413,414
> BIN_SH=xpg4; export BIN_SH # for Tru64
> DUALCASE=1; export DUALCASE # for MKS sh
454,455c469,481
< if test "${LC_ALL+set}" = set; then
<   save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
---
> lt_env=
> for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
> do
>   eval "if test \"\${$lt_var+set}\" = set; then
> save_$lt_var=\$$lt_var
> lt_env=\"$lt_var=\$$lt_var \$lt_env\"
> $lt_var=C
> export $lt_var
>   fi"
> done
> 
> if test -n "$lt_env"; then
>   lt_env="env $lt_env"
457,459d482
< if test "${LANG+set}" 

#50249 [NEW]: ordinal month days don't work

2009-11-20 Thread jennifer dot kimball at nrc dot ca
From: jennifer dot kimball at nrc dot ca
Operating system: Solaris 10
PHP version:  5.3.1
PHP Bug Type: Date/time related
Bug description:  ordinal month days don't work

Description:

It appears impossible to write an expression that will generate the Nth
day of any month (except for first or last days).

Expressions like "third day of next month" fail in date_create().
Expressions like "next month +3 days" increment the month number and add 3
days to the current day number.
Expressions like "first day of next month +2 days" give just the first day
of the month.



Reproduce code:
---
//today is Nov 20, 2009

$d1=date_create('third day of next month');
print_r(DateTime::getLastErrors()); //errors
echo 'd1: ',$d1->format('Y-m-d'); //nothing output

$d2=date_create('first day of next month');
echo 'd2: ',$d2->format('Y-m-d'); //2009-12-01, works as expected

$d3=date_create('first day of next month +2 days');
echo 'd3: ',$d3->format('Y-m-d'); //2009-12-01, not 2009-12-03

$d4=date_create('next month +3 days');
echo 'd4: ',$d4->format('Y-m-d'); //2009-12-23, also not 2009-12-03 though
I can understand why



Expected result:

Array
(
[warning_count] => 0
[warnings] => Array
(
)

[error_count] => 0
[errors] => Array
(
)

)
d1: 2009-12-03

d2: 2009-12-01

d3: 2009-12-03

d4: 2009-12-23

Actual result:
--
Array
(
[warning_count] => 0
[warnings] => Array
(
)

[error_count] => 1
[errors] => Array
(
[10] => The timezone could not be found in the database
)

)
d1: 

d2: 2009-12-01

d3: 2009-12-01 //still the 1st, 2 days not added

d4: 2009-12-23

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



#50243 [Fbk->Bgs]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread pierrick
 ID:   50243
 Updated by:   pierr...@php.net
 Reported By:  pontus dot alexander at gmail dot com
-Status:   Feedback
+Status:   Bogus
 Bug Type: Reproducible crash
 Operating System: Debian
 PHP Version:  5.3SVN-2009-11-20 (snap)
 Assigned To:  pierrick
 New Comment:

Thank you for taking the time to report a problem with PHP.
Unfortunately you are not using a current version of PHP -- 
the problem might already be fixed. Please download a new
PHP version from http://www.php.net/downloads.php

If you are able to reproduce the bug with one of the latest
versions of PHP, please change the PHP version on this bug report
to the version you tested and change the status back to "Open".
Again, thank you for your continued support of PHP.




Previous Comments:


[2009-11-20 17:53:46] ras...@php.net

I tested this on an Ubuntu box and was unable to reproduce the crash. 
And under Valgrind it didn't report anything suspicious either.

I assume this is without curlwrappers enabled?  Please list all your
compile flags.



[2009-11-20 17:22:12] pierr...@php.net

Please try using this snapshot:

  http://snaps.php.net/php5.3-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/





[2009-11-20 14:32:27] pontus dot alexander at gmail dot com

Description:

After one successful write to FTP via file_put_contents (or fopen,
fwrite, fclose) the next attempt causes PHP to die with message
"Segmentation fault".

Reproduce code:
---
ftp://foo:b...@domain.com/";;

$unique = uniqid();

$items = array(
'foo',
'bar'
);

$i = 0;
foreach($items as $content) {
$filename = $location . sprintf("File_%s_%03u.txt", $unique, $i++);
file_put_contents($filename, $content); // Crash on _second_
successful iteration
}

Expected result:

Two files placed on FTP-server successfully containing foo and bar
respectively.

Actual result:
--
First file writes fine. At second iteration file_put_contents causes
PHP to die.





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



#50205 [Bgs]: Can't start Apache 2.2.14 with PHP 5.2.11

2009-11-20 Thread vladmu at mail dot ru
 ID:   50205
 User updated by:  vladmu at mail dot ru
 Reported By:  vladmu at mail dot ru
 Status:   Bogus
 Bug Type: Apache2 related
 Operating System: win32 only - Windows XP
 PHP Version:  5.2.11
 New Comment:

I don't know this is the configuration error or something else but:

1. I have tried to install a snapshot and there is an equal bug.
2. I have tried to install an Apache 2.2.14 + PHP 5.2.10 and no any
errors have occured, and the same was with the Apache 2.2.14 + PHP
5.3.0

Therefore no bogus bug here, but really something wrong with your
5.2.11 libraries for WIndows. Please try to reproduce by yourself at
first before change the bug status to bogus.


Previous Comments:


[2009-11-20 10:28:09] paj...@php.net

Configuration error, ask on php-setup for support.



[2009-11-18 14:23:53] j...@php.net

Please try using this snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/

..and remove ALL old dlls and stuff before you do this..



[2009-11-17 17:22:35] vladmu at mail dot ru

Description:

There is a error from windows event viewer:

Faulting application httpd.exe, version 2.2.14.0, faulting module
php5ts.dll, version 5.2.11.11, fault address 0x000f330d.

Steps to reproduce:

1. Install Apache 2.2.14
2. Stop Apache 2.2 service
3. Install PHP 5.2.11 and select web server Apache 2.2 with defining
config path
4. Run Apache 2.2 service







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



#50190 [Opn->Fbk]: need libtool >=1.5.26

2009-11-20 Thread jani
 ID:   50190
 Updated by:   j...@php.net
 Reported By:  ralphdoncaster at gmail dot com
-Status:   Open
+Status:   Feedback
 Bug Type: Apache2 related
 Operating System: AIX 5.3
 PHP Version:  5.2.11
 New Comment:

I should have been more verbose I guess: I need diff -u (unified diff)
and do NOT paste it here but in http://pastebin.com/ and provide the URL
to the paste in this bug report. DO NOT EMAIL anything to me!


Previous Comments:


[2009-11-20 18:17:13] ralphdoncaster at gmail dot com

OK, even though I think your're going about it the hard way (instead of
just updating the included libtool to >+1.5.26) here's a regular diff
(I'll email you it too):
7c7
< # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
---
> # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007, 2008
53c53
< build_libtool_libs=no
---
> build_libtool_libs=yes
65c65
< fast_install=needless
---
> fast_install=yes
68c68
< host_alias=powerpc-ibm-aix5.3.0.0
---
> host_alias=
86a87,89
> # LTCC compiler flags.
> LTCFLAGS="-g -O2"
> 
94c97
< EGREP="grep -E"
---
> EGREP="/usr/bin/grep -E"
147c150
< max_cmd_len=8192
---
> max_cmd_len=18432
171c174
< link_static_flag="-static"
---
> link_static_flag=""
193c196
< library_names_spec="\${libname}\${release}.a \$libname.a"
---
> library_names_spec="\${libname}\${release}\${shared_ext}\$versuffix
\${libname}\${release}\${shared_ext}\$major \$libname\${shared_ext}"
196c199
< soname_spec="\${libname}\${release}\${shared_ext}\$major"
---
> soname_spec=""
200,201c203,204
< old_archive_cmds="\$AR \$AR_FLAGS
\$oldlib\$oldobjs\$old_deplibs~\$RANLIB \$oldlib"
< old_postinstall_cmds="\$RANLIB \$oldlib~chmod 644 \$oldlib"
---
> old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB
\$oldlib"
> old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$oldlib"
212c215
< archive_expsym_cmds="\$CC -shared -o \$output_objdir/\$soname
\$libobjs \$deplibs \$compiler_flags \${wl}-bE:\$export_symbols
\${wl}-bnoentry\${allow_undefined_flag}~\$AR \$AR_FLAGS
\$output_objdir/\$libname\$release.a \$output_objdir/\$soname"
---
> archive_expsym_cmds="\$CC -o \$output_objdir/\$soname \$libobjs
\$deplibs \${wl}-bnoentry \$compiler_flags \\\`if test
\\\"x\${allow_undefined_flag}\\\" != \\\"x\\\"; then echo
\\\"\${wl}\${allow_undefined_flag}\\\"; else :; fi\\\`
\${wl}-bexport:\$export_symbols -shared \${wl}-G"
239a243,246
> # The directories searched by this compiler when creating a shared
> # library
> compiler_lib_search_dirs=""
> 
251c258
< allow_undefined_flag=" \${wl}-berok"
---
> allow_undefined_flag="-berok"
254c261
< no_undefined_flag=" \${wl}-bernotok"
---
> no_undefined_flag=""
316c323
< variables_saved_for_relink="PATH   GCC_EXEC_PREFIX COMPILER_PATH
LIBRARY_PATH"
---
> variables_saved_for_relink="PATH LIBPATH  GCC_EXEC_PREFIX
COMPILER_PATH LIBRARY_PATH"
322c329
< sys_lib_search_path_spec="
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/
/usr/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../../../powerpc-ibm-aix5.3.0.0/lib/powerpc-ibm-aix5.3.0.0/4.2.0/
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../../../powerpc-ibm-aix5.3.0.0/lib/
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../../powerpc-ibm-aix5.3.0.0/4.2.0/
/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../../
/lib/powerpc-ibm-aix5.3.0.0/4.2.0/ /lib/
/usr/lib/powerpc-ibm-aix5.3.0.0/4.2.0/ /usr/lib/"
---
>
sys_lib_search_path_spec="/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0
/opt/freeware/lib /lib /usr/lib"
340c347
< exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
---
> exclude_expsyms="_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*"
350,351c357,358
< # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
< # Free Software Foundation, Inc.
---
> # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
2006,
> # 2007, 2008  Free Software Foundation, Inc.
392,393c399,400
< VERSION=1.5.20
< TIMESTAMP=" (1.1220.2.287 2005/08/31 18:54:15)"
---
> VERSION=1.5.26
> TIMESTAMP=" (1.1220.2.492 2008/01/30 06:40:56)"
395,397c402,408
< # See if we are running on zsh, and set the options which allow our
< # commands through without removal of \ escapes.
< if test -n "${ZSH_VERSION+set}" ; then
---
> # Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
> if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1;
then
>   emulate sh
>   NULLCMD=:
>   # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
>   # is contrary to our usage.  Disable this feature.
>   alias -g '${1+"$@"}'='"$@"'
398a410,411
> else
>   case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
399a413,414
> BIN_SH=xpg4; export BIN_SH # for Tru64
> DUALCASE=1; export DUALCASE # for MKS sh
454,455c469,481
< if test "${LC_ALL+set}" = set; then
<   save_LC_ALL="$LC_ALL"; LC_ALL=C; export LC_ALL
---
> lt_env=
> for lt_var in LANG LANG

#50250 [NEW]: Exceptions can be thrown and caught in an autoload function

2009-11-20 Thread bran...@php.net
From: bran...@php.net
Operating system: Irrelevent
PHP version:  5.3.1
PHP Bug Type: SPL related
Bug description:  Exceptions can be thrown and caught in an autoload function

Description:

According to the PHP documentation, exceptions cannot be thrown inside
__autoload() functions, and prior to PHP 5.3, exceptions thrown resulted in
fatal errors. Since PHP 5.3, it has been possible to throw and catch
exceptions from __autoload() functions.

I'm happy to chalk this up to a documentation bug, and if it is I will
gladly fix it myself; however, I want to make sure this is intended
functionality and not an accidental inclusion that might be fixed in future
versions of PHP.

Reproduce code:
---
http://bugs.php.net/?id=50250&edit=1
-- 
Try a snapshot (PHP 5.2):
http://bugs.php.net/fix.php?id=50250&r=trysnapshot52
Try a snapshot (PHP 5.3):
http://bugs.php.net/fix.php?id=50250&r=trysnapshot53
Try a snapshot (PHP 6.0):
http://bugs.php.net/fix.php?id=50250&r=trysnapshot60
Fixed in SVN:
http://bugs.php.net/fix.php?id=50250&r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=50250&r=needdocs
Fixed in release:
http://bugs.php.net/fix.php?id=50250&r=alreadyfixed
Need backtrace:  
http://bugs.php.net/fix.php?id=50250&r=needtrace
Need Reproduce Script:   
http://bugs.php.net/fix.php?id=50250&r=needscript
Try newer version:   
http://bugs.php.net/fix.php?id=50250&r=oldversion
Not developer issue: 
http://bugs.php.net/fix.php?id=50250&r=support
Expected behavior:   
http://bugs.php.net/fix.php?id=50250&r=notwrong
Not enough info: 
http://bugs.php.net/fix.php?id=50250&r=notenoughinfo
Submitted twice: 
http://bugs.php.net/fix.php?id=50250&r=submittedtwice
register_globals:
http://bugs.php.net/fix.php?id=50250&r=globals
PHP 4 support discontinued:  http://bugs.php.net/fix.php?id=50250&r=php4
Daylight Savings:http://bugs.php.net/fix.php?id=50250&r=dst
IIS Stability:   
http://bugs.php.net/fix.php?id=50250&r=isapi
Install GNU Sed: 
http://bugs.php.net/fix.php?id=50250&r=gnused
Floating point limitations:  
http://bugs.php.net/fix.php?id=50250&r=float
No Zend Extensions:  
http://bugs.php.net/fix.php?id=50250&r=nozend
MySQL Configuration Error:   
http://bugs.php.net/fix.php?id=50250&r=mysqlcfg



#50190 [Fbk->Opn]: need libtool >=1.5.26

2009-11-20 Thread ralphdoncaster at gmail dot com
 ID:   50190
 User updated by:  ralphdoncaster at gmail dot com
 Reported By:  ralphdoncaster at gmail dot com
-Status:   Feedback
+Status:   Open
 Bug Type: Apache2 related
 Operating System: AIX 5.3
 PHP Version:  5.2.11
 New Comment:

I guess you missed the part where I said I don't have gnu diff.


Previous Comments:


[2009-11-20 19:48:10] j...@php.net

I should have been more verbose I guess: I need diff -u (unified diff)
and do NOT paste it here but in http://pastebin.com/ and provide the URL
to the paste in this bug report. DO NOT EMAIL anything to me!



[2009-11-20 14:01:01] j...@php.net

Yes, I know all this. I really need the diff between the libtool that
gets generated with stock PHP (which didn't work for you) and the
libtool your replaced it with. Can you do this or not? If you can, put
it to pastebin.com and submit the url here..



[2009-11-20 13:10:54] ralphdoncaster at gmail dot com

I tried it again with need_version=1.5.26 and it makes no difference.



[2009-11-20 13:02:46] ralphdoncaster at gmail dot com

I don't have gnu diff installed, but I think the diff is a red herring
anyway; we know it's the difference between 1.5.20 & 1.5.26.

I think the issue may be the version of autoconf used to build the
distribution configure script(if libtool is included as part of
autoconf, which I'm not so sure it is).  Since the date stamp for 1.5.26
is 2008/01/30, if autoconf 2.61 or earlier was used to build configure,
it can't have included libtool 1.5.26.  build/buildcheck.sh only
requires autoconf 2.13 or newer.

If autoconf just uses the version of libtool installed on the
distribution build box, then maybe changing libtool.m4:1236 might work:
need_version=no
to:
need_version=1.5.26
might work.

I tried rebuilding configure (I have autoconf 2.59 and no libtool
installed).  The libtool that was created after running configure was
still 1.5.20. here's what I ran:
autoconf
./configure
./libtool --version



[2009-11-17 09:14:09] j...@php.net

How about a 'diff -u' between the PHP libtool and Apache libtool?



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/50190

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



#50251 [NEW]: Deprecated php.ini options warnings are not supressable

2009-11-20 Thread jd at cpanel dot net
From: jd at cpanel dot net
Operating system: Centos 5 AMD64
PHP version:  5.3.1
PHP Bug Type: *Configuration Issues
Bug description:  Deprecated php.ini options warnings are not supressable

Description:

This is pretty much a duplicate of bug 49362 which was incorrectly
closed.

Jani's fix at revision 288038 doesn't correct the problem.

In a nutshell, it's impossible to configure PHP's error_reporting level so
that it doesn't spit out warnings about deprecated php.ini directives at
startup.  This is because the warnings are displayed before the
error_reporting setting is registered.

Reproduce code:
---
r...@rh73 [~]# printf "[PHP]\nerror_reporting = E_ALL & ~E_DEPRECATED &
~E_WARNING\nmagic_quotes_gpc = On\n" >~/php.ini
r...@rh73 [~]# /usr/bin/php -c/root/ -v
PHP Warning:  Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and
greater in Unknown on line 0
PHP 5.3.1 (cgi-fcgi) (built: Nov 19 2009 18:50:13)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies
r...@rh73 [~]#


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



#50251 [Opn]: Deprecated php.ini options warnings are not supressable

2009-11-20 Thread jd at cpanel dot net
 ID:   50251
 User updated by:  jd at cpanel dot net
 Reported By:  jd at cpanel dot net
 Status:   Open
 Bug Type: *Configuration Issues
 Operating System: Centos 5 AMD64
 PHP Version:  5.3.1
 New Comment:

Sorry, I don't know how to submit a patch correctly to your BTS.

r...@jd:/usr/local/svn/ea/3/branch/easy_test/targz/Cpanel/Easy/PHP5/3_1#
cat php5-5.3.1-unsupressable-deprecated-warnings.patch 
diff -Nur php-5.3.1.orig/main/main.c php-5.3.1/main/main.c
--- php-5.3.1.orig/main/main.c  2009-10-28 10:19:32.0 -0500
+++ php-5.3.1/main/main.c   2009-11-20 13:30:13.0 -0600
@@ -1938,6 +1938,12 @@
return FAILURE;
}
 
+   /* Register PHP core ini entries */
+   REGISTER_INI_ENTRIES();
+
+   /* Register Zend ini entries */
+   zend_register_standard_ini_entries(TSRMLS_C);
+
/* Check for deprecated directives */
{
static const char *directives[] = {
@@ -1954,7 +1960,7 @@
 
while (*p) {
if (cfg_get_long((char*)*p, &val) == SUCCESS &&
val) {
-   zend_error(E_WARNING, "Directive '%s'
is deprecated in PHP 5.3 and greater", *p);
+   zend_error(E_DEPRECATED, "Directive
'%s' is deprecated in PHP 5.3 and greater", *p);
}
++p;
}
@@ -1965,12 +1971,6 @@
}
}
 
-   /* Register PHP core ini entries */
-   REGISTER_INI_ENTRIES();
-
-   /* Register Zend ini entries */
-   zend_register_standard_ini_entries(TSRMLS_C);
-
/* Disable realpath cache if safe_mode or open_basedir are set
*/
if (PG(safe_mode) || (PG(open_basedir) && *PG(open_basedir)))
{
CWDG(realpath_cache_size_limit) = 0;


Previous Comments:


[2009-11-20 20:08:45] jd at cpanel dot net

Description:

This is pretty much a duplicate of bug 49362 which was incorrectly
closed.

Jani's fix at revision 288038 doesn't correct the problem.

In a nutshell, it's impossible to configure PHP's error_reporting level
so that it doesn't spit out warnings about deprecated php.ini directives
at startup.  This is because the warnings are displayed before the
error_reporting setting is registered.

Reproduce code:
---
r...@rh73 [~]# printf "[PHP]\nerror_reporting = E_ALL & ~E_DEPRECATED &
~E_WARNING\nmagic_quotes_gpc = On\n" >~/php.ini
r...@rh73 [~]# /usr/bin/php -c/root/ -v
PHP Warning:  Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and
greater in Unknown on line 0
PHP 5.3.1 (cgi-fcgi) (built: Nov 19 2009 18:50:13)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies
r...@rh73 [~]#






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



#50250 [Opn]: Exceptions can be thrown and caught in an autoload function

2009-11-20 Thread bjori
 ID:   50250
 Updated by:   bj...@php.net
 Reported By:  bran...@php.net
 Status:   Open
-Bug Type: SPL related
+Bug Type: Scripting Engine problem
 Operating System: Irrelevent
 PHP Version:  5.3.1
 New Comment:

This is also true for __autoload(), not only spl_register_autoload().

Bug or expected behavior as of PHP 5.3.0?



Previous Comments:


[2009-11-20 19:50:03] bran...@php.net

Description:

According to the PHP documentation, exceptions cannot be thrown inside
__autoload() functions, and prior to PHP 5.3, exceptions thrown resulted
in fatal errors. Since PHP 5.3, it has been possible to throw and catch
exceptions from __autoload() functions.

I'm happy to chalk this up to a documentation bug, and if it is I will
gladly fix it myself; however, I want to make sure this is intended
functionality and not an accidental inclusion that might be fixed in
future versions of PHP.

Reproduce code:
---
http://bugs.php.net/?id=50250&edit=1



#47494 [Bgs]: htmlspecialchars does not throw E_WARNING on multibyte problems

2009-11-20 Thread stas
 ID:   47494
 Updated by:   s...@php.net
 Reported By:  philipp dot feigl at gmail dot com
 Status:   Bogus
 Bug Type: Strings related
 Operating System: CentOS5
 PHP Version:  5.2.8
 New Comment:

The idea is to return an error but not display it (i.e. log it or allow
custom error handlers to process it). 

The reason for it is that, unfortunately, people run servers in
production with display_errors=On, and php_escape_html_entities_ex can
be triggered from all kinds of code that usually doesn't produce errors,
which can reveal sensitive information on public sites.  So we chose to
go after lesser of two evils and not generate the error in this
context.

For debugging, I would suggest always logging errors and checking the
error log, as some errors may be hard to spot in display anyway
(especially true if your script produces something like JSON).


Previous Comments:


[2009-02-25 13:48:11] j...@php.net

It's intentional. If you disagree, please ask s...@php.net why it is
like this (I once reverted that :) 



[2009-02-24 13:57:32] philipp dot feigl at gmail dot com

Description:

When using htmlspecialchars with a invalid multibyte string and using
UTF-8 as encoding, there are two possible outcomes based on the
"display_errors" ini setting:

1. display_errors=1
=> empty string is returned

2. display_errors=0
=> E_WARNING is thrown

This is exactly what the code states. Can be viewed in 
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/html.c?view=markup
on line 1147

However this is VERY confusing as a developer point of view. As I have
display_errors always set to "1" for debugging purposes, I never
realized, one of our locale strings was corrupt, as it was just emptied
out.

Now in the production environment, our error handler terminates the
script because of the E_WARNING beeing thrown.

While both of the ways (empty string / error) are acceptable for me -
because ofcourse the input string is invalid, it is very confusing to
have different behaviors of PHP based on the display_errors setting.

Reproduce code:
---
echo 'a' . htmlspecialchars(substr(utf8_encode('aü'), 0, 2),
ENT_QUOTES, 'UTF-8') . 'b';

Expected result:

Either 'ab'
Or PHP E_WARNING

However not both based on display_errors

Actual result:
--
display_errors=1 => 'ab'
display_errors=0 => E_WARNING





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



#46715 [Com]: Segfault on long sql query in pdo_mysql

2009-11-20 Thread svoboda at svoon dot net
 ID:   46715
 Comment by:   svoboda at svoon dot net
 Reported By:  svoboda at svoon dot net
 Status:   No Feedback
 Bug Type: PDO related
 Operating System: debian etch
 PHP Version:  5.2CVS-2008-11-29 (snap)
 New Comment:

gdb ./sapi/cli/php
GNU gdb 6.4.90-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i486-linux-gnu"...Using host libthread_db
library "/lib/tls/libthread_db.so.1".

warning: not using untrusted file "/home/src/php-5.2.9-debug/.gdbinit"
(gdb) run public/test.php
Starting program: /home/src/php-5.2.9-debug/sapi/cli/php
public/test.php
[Thread debugging using libthread_db enabled]
[New Thread -1225201984 (LWP 12114)]

Warning: PHP Startup: Unable to load dynamic library
'/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/fileinfo.so'
- /usr/local/php5/lib/php/extensions/debug-non-zts-20060613/fileinfo.so:
cannot open shared object file: No such file or directory in Unknown on
line 0

Warning: PHP Startup: Unable to load dynamic library
'/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/ps.so' -
/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/ps.so: cannot
open shared object file: No such file or directory in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library
'/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/gnupg.so' -
/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/gnupg.so:
cannot open shared object file: No such file or directory in Unknown on
line 0

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1225201984 (LWP 12114)]
0x080c70f2 in match (
eptr=0xb6e8a6f8 "strong>e-mail: mailto:.cztel: 483 737
667\r\n\r\n\r\n\r\n\r\n \r\nM"..., ecode=0x8c01956 "b",
mstart=0xb6e89c8a "'Mgr. \nLibor Behúl\r\n\r\n\r\n\r\n"..., offset_top=4, md=0xbfe00408, ims=0,
eptrb=0xbf604158, flags=2,
rdepth=5339) at
/usr/src/php-5.2.9-debug/ext/pcre/pcrelib/pcre_exec.c:714
714 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode],
offset_top, md,


Previous Comments:


[2009-01-16 01:00:00] php-bugs at lists dot php dot net

No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".



[2009-01-08 05:31:33] ka...@php.net

Thank you for this bug report. To properly diagnose the problem, we
need a backtrace to see what is happening behind the scenes. To
find out how to generate a backtrace, please read
http://bugs.php.net/bugs-generating-backtrace.php for *NIX and
http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32

Once you have generated a backtrace, please submit it to this bug
report and change the status back to "Open". Thank you for helping
us make PHP better.





[2008-12-07 10:36:15] svoboda at svoon dot net

this bug still remains in 5.2.7 version.
ondrej



[2008-11-29 09:17:18] svoboda at svoon dot net

full source is on the page http://www.tojeono.cz/script/php-bug.phps
ondrej



[2008-11-29 09:16:23] svoboda at svoon dot net

Description:

when use long sql query I get segmentation fault. I use latest zend
framework.
I was trying versions 5.2.6, 5.2 snapshot and 5.3 snapshot, I was
trying to coplime php with mysql version 4.1, 5.0 and 5.1 but still the
same result.

Reproduce code:
---
set_include_path(get_include_path() . PATH_SEPARATOR
. '../../../data/library' . PATH_SEPARATOR
);

require_once('Zend/Loader.php');
Zend_Loader::registerAutoload();


$db = Zend_Db::factory('pdo_mysql',array
('host'=>'xx','username'=>'xx','password'=>'xxx','dbname'=>''));
$db->query("SET NAMES utf8");
$db->query("LONG UPDATE QUERY..."); <- on this line I get segfault
echo 'ok';

full source is on the page. if use shorter sql query the script works
fine.

Expected result:

it should print just ok :)






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



#46715 [NoF->Opn]: Segfault on long sql query in pdo_mysql

2009-11-20 Thread svoboda at svoon dot net
 ID:   46715
 User updated by:  svoboda at svoon dot net
 Reported By:  svoboda at svoon dot net
-Status:   No Feedback
+Status:   Open
 Bug Type: PDO related
 Operating System: debian etch
 PHP Version:  5.2CVS-2008-11-29 (snap)
 New Comment:

I providet the debug output


Previous Comments:


[2009-11-20 21:24:44] svoboda at svoon dot net

gdb ./sapi/cli/php
GNU gdb 6.4.90-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i486-linux-gnu"...Using host libthread_db
library "/lib/tls/libthread_db.so.1".

warning: not using untrusted file "/home/src/php-5.2.9-debug/.gdbinit"
(gdb) run public/test.php
Starting program: /home/src/php-5.2.9-debug/sapi/cli/php
public/test.php
[Thread debugging using libthread_db enabled]
[New Thread -1225201984 (LWP 12114)]

Warning: PHP Startup: Unable to load dynamic library
'/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/fileinfo.so'
- /usr/local/php5/lib/php/extensions/debug-non-zts-20060613/fileinfo.so:
cannot open shared object file: No such file or directory in Unknown on
line 0

Warning: PHP Startup: Unable to load dynamic library
'/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/ps.so' -
/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/ps.so: cannot
open shared object file: No such file or directory in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library
'/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/gnupg.so' -
/usr/local/php5/lib/php/extensions/debug-non-zts-20060613/gnupg.so:
cannot open shared object file: No such file or directory in Unknown on
line 0

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1225201984 (LWP 12114)]
0x080c70f2 in match (
eptr=0xb6e8a6f8 "strong>e-mail: mailto:.cztel: 483 737
667\r\n\r\n\r\n\r\n\r\n \r\nM"..., ecode=0x8c01956 "b",
mstart=0xb6e89c8a "'Mgr. \nLibor Behúl\r\n\r\n\r\n\r\n"..., offset_top=4, md=0xbfe00408, ims=0,
eptrb=0xbf604158, flags=2,
rdepth=5339) at
/usr/src/php-5.2.9-debug/ext/pcre/pcrelib/pcre_exec.c:714
714 RMATCH(eptr, ecode + _pcre_OP_lengths[*ecode],
offset_top, md,



[2009-01-16 01:00:00] php-bugs at lists dot php dot net

No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".



[2009-01-08 05:31:33] ka...@php.net

Thank you for this bug report. To properly diagnose the problem, we
need a backtrace to see what is happening behind the scenes. To
find out how to generate a backtrace, please read
http://bugs.php.net/bugs-generating-backtrace.php for *NIX and
http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32

Once you have generated a backtrace, please submit it to this bug
report and change the status back to "Open". Thank you for helping
us make PHP better.





[2008-12-07 10:36:15] svoboda at svoon dot net

this bug still remains in 5.2.7 version.
ondrej



[2008-11-29 09:17:18] svoboda at svoon dot net

full source is on the page http://www.tojeono.cz/script/php-bug.phps
ondrej



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/46715

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



#48219 [Com]: POST data is not decoded, according to Content-Transfer-Encoding

2009-11-20 Thread codeslinger at compsalot dot com
 ID:   48219
 Comment by:   codeslinger at compsalot dot com
 Reported By:  carsten_sttgt at gmx dot de
 Status:   Open
 Bug Type: Feature/Change Request
 Operating System: *
 PHP Version:  5.*, 6CVS (2009-05-09)
 New Comment:

Well, I mostly deal with email, especially including webmail.  and as
far as I can see, nearly all attachments are base64 encoded. In fact it
is hard to find anything that isn't,  unless it's plain text.

So, I guess I was a little bit confused about the difference between
HTTP uploads and email uploads, since they both use MIME and typically
they both contain web pages.

With regard to this feature request.  I would really like for php to
make the MIME Header info available.  That way we can easily do our own
decoding as long as we have access to the info that tells us what needs
to be decoded, currently we don't, at least not with out kludge hacks,
and that makes it hard to do something which should be simple.


Previous Comments:


[2009-11-19 23:55:12] avalon73 at caerleon dot us

RFC 2616 section 3.2.7 itself says nothing about the use of
Content-Transfer-Encoding (CTE).

RFCs 1867 and 2388 both mention the possibility of the
multipart/form-data MIME type being used with email as a transport as
well as HTTP.  The CTE header and the "base64" and "quoted-printable"
encodings were included in MIME specifically for moving 8-bit data over
7-bit transport protocols, which included basic (non-enhanced) SMTP at
the time of its creation (and still does, if you adhere strictly to the
RFCs).  The other standard encodings defined for the CTE header (7bit,
8bit, and binary) imply no content encoding at all.

HTTP is and has always been an 8-bit clean transport protocol.  Because
of that, it has no need for any encodings designed to move 8-bit data
over a 7-bit protocol.  In fact, the use of such encodings would only
needlessly add bulk to the data being transferred.  If no such
transformation is necessary, the addition of the CTE header is also not
necessary.  Section 19.4.5 of RFC 2616 would seem to merely codify this
fact, effectively forbidding the use of CTE over HTTP.



[2009-11-19 23:00:39] carsten_sttgt at gmx dot de

> Has anyone noticed this?
> http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.4.5

Sure, but in rfc2616-sec3.html#sec3.7.2 you can read, that especially
multipart/form-data is defined in RFC1867 (RFC2388). And there you can
read about the content-transfer-encoding.

Regards,
Carsten



[2009-11-19 20:59:16] avalon73 at caerleon dot us

Has anyone noticed this?

http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.4.5

RFC 2616 is the one for HTTP 1.1, and the first paragraph reads as
such:

---
HTTP does not use the Content-Transfer-Encoding (CTE) field of RFC
2045. Proxies and gateways from MIME-compliant protocols to HTTP MUST
remove any non-identity CTE ("quoted-printable" or "base64") encoding
prior to delivering the response message to an HTTP client.
---

Perhaps that's why PHP hasn't supported it, and why no browser in the
real world (that I know of... I could be mistaken) ever sends base-64 or
quoted-printable encoded multipart/form-data parts?



[2009-11-18 08:23:46] codeslinger at compsalot dot com

this also afflicts Base64 encoding which is a massively prevalent
method for binary transfers

I am really surprised to encounter this *bug*

It means that everything php is doing with regard to saving/moving
uploaded files is wasted/useless effort.  Since the content transfer
type is not even accessible, we must instead do our own parsing of the
raw post data.  How can that be by design???



[2009-05-15 00:14:44] carsten_sttgt at gmx dot de

After a quick view to rfc1867.c, I found a lot of:
| #if HAVE_MBSTRING && !defined(COMPILE_DL_MBSTRING)

So I guess a correct behavior, according to rfc2616/rfc1867, is only
possible and working, if you have the mbstring extension, and if this is
not a shared extension. (why does this not work with a shared
extension?)

(can't test this, because this extension is always shared in my
installations.)

It's like bug #37860:
A HTTP UA is sending such a valid POST request and PHP is answering
with a status 200. And both, browser an script, must assume all is ok.
Instead the data is garbled.

In contrast to bug #37860, it's not defined to return a status 415,
(but maybe the best solution for now?).

In case of bug #37860, the return status 415 is defined for such
situation. But PHP is also not doing this :-/ Also a problem, if all
parts are thinking the POST request is OK.


Regards,
Carsten

-

#50251 [Opn->Asn]: Deprecated php.ini options warnings are not supressable

2009-11-20 Thread pajoye
 ID:   50251
 Updated by:   paj...@php.net
 Reported By:  jd at cpanel dot net
-Status:   Open
+Status:   Assigned
 Bug Type: *Configuration Issues
 Operating System: Centos 5 AMD64
 PHP Version:  5.3.1
-Assigned To:  
+Assigned To:  jani


Previous Comments:


[2009-11-20 20:11:13] jd at cpanel dot net

Sorry, I don't know how to submit a patch correctly to your BTS.

r...@jd:/usr/local/svn/ea/3/branch/easy_test/targz/Cpanel/Easy/PHP5/3_1#
cat php5-5.3.1-unsupressable-deprecated-warnings.patch 
diff -Nur php-5.3.1.orig/main/main.c php-5.3.1/main/main.c
--- php-5.3.1.orig/main/main.c  2009-10-28 10:19:32.0 -0500
+++ php-5.3.1/main/main.c   2009-11-20 13:30:13.0 -0600
@@ -1938,6 +1938,12 @@
return FAILURE;
}
 
+   /* Register PHP core ini entries */
+   REGISTER_INI_ENTRIES();
+
+   /* Register Zend ini entries */
+   zend_register_standard_ini_entries(TSRMLS_C);
+
/* Check for deprecated directives */
{
static const char *directives[] = {
@@ -1954,7 +1960,7 @@
 
while (*p) {
if (cfg_get_long((char*)*p, &val) == SUCCESS &&
val) {
-   zend_error(E_WARNING, "Directive '%s'
is deprecated in PHP 5.3 and greater", *p);
+   zend_error(E_DEPRECATED, "Directive
'%s' is deprecated in PHP 5.3 and greater", *p);
}
++p;
}
@@ -1965,12 +1971,6 @@
}
}
 
-   /* Register PHP core ini entries */
-   REGISTER_INI_ENTRIES();
-
-   /* Register Zend ini entries */
-   zend_register_standard_ini_entries(TSRMLS_C);
-
/* Disable realpath cache if safe_mode or open_basedir are set
*/
if (PG(safe_mode) || (PG(open_basedir) && *PG(open_basedir)))
{
CWDG(realpath_cache_size_limit) = 0;



[2009-11-20 20:08:45] jd at cpanel dot net

Description:

This is pretty much a duplicate of bug 49362 which was incorrectly
closed.

Jani's fix at revision 288038 doesn't correct the problem.

In a nutshell, it's impossible to configure PHP's error_reporting level
so that it doesn't spit out warnings about deprecated php.ini directives
at startup.  This is because the warnings are displayed before the
error_reporting setting is registered.

Reproduce code:
---
r...@rh73 [~]# printf "[PHP]\nerror_reporting = E_ALL & ~E_DEPRECATED &
~E_WARNING\nmagic_quotes_gpc = On\n" >~/php.ini
r...@rh73 [~]# /usr/bin/php -c/root/ -v
PHP Warning:  Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and
greater in Unknown on line 0
PHP 5.3.1 (cgi-fcgi) (built: Nov 19 2009 18:50:13)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies
r...@rh73 [~]#






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



#50246 [Bgs]: Throw exception fails in __autoload() implementation

2009-11-20 Thread krzysztof dot talajko at gmail dot com
 ID:   50246
 User updated by:  krzysztof dot talajko at gmail dot com
 Reported By:  krzysztof dot talajko at gmail dot com
 Status:   Bogus
 Bug Type: Scripting Engine problem
 Operating System: Windows 7 RC
 PHP Version:  5.2.11
 New Comment:

Thank you for the Friendly Welcome.

My suggestion is to fix the manual in autoloading section, because it
is confusing. In php 5.3 exceptions can be thrown without this error.
There is no information about this difference between various php
versions. Second confusing thing is that in Zend Framework there is also
exception thrown in autoload function ... but I assume that some of ZF
programmers just didn't read the manual.


Previous Comments:


[2009-11-20 17:56:20] j...@php.net

Thank you for not reading the manual or searching existing bug reports.
RTFM: http://php.net/autoload




[2009-11-20 16:05:47] krzysztof dot talajko at gmail dot com

Simpler reproduce code is (results same as in original code):

getMessage().").";
}



[2009-11-20 15:58:12] krzysztof dot talajko at gmail dot com

Description:

Throw exception in __autoload() implementation is impossible. Instead
fatal error "Class (...) not found" is reported.

Reproduce code:
---
getMessage().").";
}


Expected result:

Caught load class failed exception (Class Some_Not_Existing_Class not
found).

Actual result:
--
Fatal error: Class 'Some_Not_Existing_Class' not found in
C:\dev\workspace\foo.php on line 19





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



#50253 [NEW]: internal encoding

2009-11-20 Thread kanea at free dot fr
From: kanea at free dot fr
Operating system: linux
PHP version:  5.2.12RC1
PHP Bug Type: DOM XML related
Bug description:  internal encoding

Description:

I have the same problem with page from wikipedia. 

It seem that the loadhtml works with iso character in internal.

Same bug that bug #32547

Reproduce code:
---
this code works :
$url="http://".$lang.".wikipedia.org/wiki/".$article;
$this->dom=new DomDocument('1.0', 'UTF-8');
$str=file_get_contents($url);
$this->dom->loadXML($str);
$this->contenu = $this->dom->saveXml();
this code don't works :
$url="http://".$lang.".wikipedia.org/wiki/".$article;
$this->dom=new DomDocument('1.0', 'UTF-8');
$str=file_get_contents($url);
$this->dom->loadHtml($str);
$this->contenu = $this->dom->saveXml();
It seem that the loadhtml works with iso characters in internal.

Expected result:

Code with utf-8 encoded characters

Actual result:
--
Code with bad characters

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



#50253 [Opn]: internal encoding

2009-11-20 Thread kanea at free dot fr
 ID:   50253
 User updated by:  kanea at free dot fr
 Reported By:  kanea at free dot fr
 Status:   Open
 Bug Type: DOM XML related
 Operating System: linux
-PHP Version:  5.2.12RC1
+PHP Version:   5.2.6-1+lenny3
 New Comment:

I cannot test on another system


Previous Comments:


[2009-11-20 23:01:27] kanea at free dot fr

Description:

I have the same problem with page from wikipedia. 

It seem that the loadhtml works with iso character in internal.

Same bug that bug #32547

Reproduce code:
---
this code works :
$url="http://".$lang.".wikipedia.org/wiki/".$article;
$this->dom=new DomDocument('1.0', 'UTF-8');
$str=file_get_contents($url);
$this->dom->loadXML($str);
$this->contenu = $this->dom->saveXml();
this code don't works :
$url="http://".$lang.".wikipedia.org/wiki/".$article;
$this->dom=new DomDocument('1.0', 'UTF-8');
$str=file_get_contents($url);
$this->dom->loadHtml($str);
$this->contenu = $this->dom->saveXml();
It seem that the loadhtml works with iso characters in internal.

Expected result:

Code with utf-8 encoded characters

Actual result:
--
Code with bad characters





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



#50243 [Bgs]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread pontus dot alexander at gmail dot com
 ID:   50243
 User updated by:  pontus dot alexander at gmail dot com
 Reported By:  pontus dot alexander at gmail dot com
 Status:   Bogus
 Bug Type: Reproducible crash
 Operating System: Debian
-PHP Version:  5.3SVN-2009-11-20 (snap)
+PHP Version:  5.3.1
 Assigned To:  pierrick
 New Comment:

I can reproduce the crash in the recently announced 5.3.1 release. 

Here's my configure-string copied from phpinfo();

'./configure' '--with-config-file-path=/etc/php' '--with-gd'
'--enable-inline-optimization' '--with-curl' '--with-gettext'
'--with-iconv' '--with-openssl' '--enable-xml' '--with-pcre-regex'
'--with-zlib' '--enable-exif' '--enable-magic-quotes' '--enable-sockets'
'--with-mysql' '--with-jpeg-dir=/usr/lib/' '--with-mysqli'
'--enable-mbstring' '--enable-zend-multibyte'


Previous Comments:


[2009-11-20 18:45:56] pierr...@php.net

Thank you for taking the time to report a problem with PHP.
Unfortunately you are not using a current version of PHP -- 
the problem might already be fixed. Please download a new
PHP version from http://www.php.net/downloads.php

If you are able to reproduce the bug with one of the latest
versions of PHP, please change the PHP version on this bug report
to the version you tested and change the status back to "Open".
Again, thank you for your continued support of PHP.





[2009-11-20 17:53:46] ras...@php.net

I tested this on an Ubuntu box and was unable to reproduce the crash. 
And under Valgrind it didn't report anything suspicious either.

I assume this is without curlwrappers enabled?  Please list all your
compile flags.



[2009-11-20 17:22:12] pierr...@php.net

Please try using this snapshot:

  http://snaps.php.net/php5.3-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/





[2009-11-20 14:32:27] pontus dot alexander at gmail dot com

Description:

After one successful write to FTP via file_put_contents (or fopen,
fwrite, fclose) the next attempt causes PHP to die with message
"Segmentation fault".

Reproduce code:
---
ftp://foo:b...@domain.com/";;

$unique = uniqid();

$items = array(
'foo',
'bar'
);

$i = 0;
foreach($items as $content) {
$filename = $location . sprintf("File_%s_%03u.txt", $unique, $i++);
file_put_contents($filename, $content); // Crash on _second_
successful iteration
}

Expected result:

Two files placed on FTP-server successfully containing foo and bar
respectively.

Actual result:
--
First file writes fine. At second iteration file_put_contents causes
PHP to die.





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



#50243 [Bgs]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread rasmus
 ID:   50243
 Updated by:   ras...@php.net
 Reported By:  pontus dot alexander at gmail dot com
 Status:   Bogus
 Bug Type: Reproducible crash
 Operating System: Debian
 PHP Version:  5.3.1
 Assigned To:  pierrick
 New Comment:

How about a gdb backtrace of the segfault then since I can't reproduce
it here on a very similar OS with the same code and the same compile
flags.


Previous Comments:


[2009-11-21 00:32:18] pontus dot alexander at gmail dot com

I can reproduce the crash in the recently announced 5.3.1 release. 

Here's my configure-string copied from phpinfo();

'./configure' '--with-config-file-path=/etc/php' '--with-gd'
'--enable-inline-optimization' '--with-curl' '--with-gettext'
'--with-iconv' '--with-openssl' '--enable-xml' '--with-pcre-regex'
'--with-zlib' '--enable-exif' '--enable-magic-quotes' '--enable-sockets'
'--with-mysql' '--with-jpeg-dir=/usr/lib/' '--with-mysqli'
'--enable-mbstring' '--enable-zend-multibyte'



[2009-11-20 18:45:56] pierr...@php.net

Thank you for taking the time to report a problem with PHP.
Unfortunately you are not using a current version of PHP -- 
the problem might already be fixed. Please download a new
PHP version from http://www.php.net/downloads.php

If you are able to reproduce the bug with one of the latest
versions of PHP, please change the PHP version on this bug report
to the version you tested and change the status back to "Open".
Again, thank you for your continued support of PHP.





[2009-11-20 17:53:46] ras...@php.net

I tested this on an Ubuntu box and was unable to reproduce the crash. 
And under Valgrind it didn't report anything suspicious either.

I assume this is without curlwrappers enabled?  Please list all your
compile flags.



[2009-11-20 17:22:12] pierr...@php.net

Please try using this snapshot:

  http://snaps.php.net/php5.3-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/





[2009-11-20 14:32:27] pontus dot alexander at gmail dot com

Description:

After one successful write to FTP via file_put_contents (or fopen,
fwrite, fclose) the next attempt causes PHP to die with message
"Segmentation fault".

Reproduce code:
---
ftp://foo:b...@domain.com/";;

$unique = uniqid();

$items = array(
'foo',
'bar'
);

$i = 0;
foreach($items as $content) {
$filename = $location . sprintf("File_%s_%03u.txt", $unique, $i++);
file_put_contents($filename, $content); // Crash on _second_
successful iteration
}

Expected result:

Two files placed on FTP-server successfully containing foo and bar
respectively.

Actual result:
--
First file writes fine. At second iteration file_put_contents causes
PHP to die.





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



#50243 [Bgs->Fbk]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread felipe
 ID:   50243
 Updated by:   fel...@php.net
 Reported By:  pontus dot alexander at gmail dot com
-Status:   Bogus
+Status:   Feedback
 Bug Type: Reproducible crash
 Operating System: Debian
 PHP Version:  5.3.1
 Assigned To:  pierrick
 New Comment:

5.3.1 doesn't have a fix for #49936, but it's present in 5.3-SVN.

Have you tested it with a 5.3 snapshot?


Previous Comments:


[2009-11-21 00:34:37] ras...@php.net

How about a gdb backtrace of the segfault then since I can't reproduce
it here on a very similar OS with the same code and the same compile
flags.



[2009-11-21 00:32:18] pontus dot alexander at gmail dot com

I can reproduce the crash in the recently announced 5.3.1 release. 

Here's my configure-string copied from phpinfo();

'./configure' '--with-config-file-path=/etc/php' '--with-gd'
'--enable-inline-optimization' '--with-curl' '--with-gettext'
'--with-iconv' '--with-openssl' '--enable-xml' '--with-pcre-regex'
'--with-zlib' '--enable-exif' '--enable-magic-quotes' '--enable-sockets'
'--with-mysql' '--with-jpeg-dir=/usr/lib/' '--with-mysqli'
'--enable-mbstring' '--enable-zend-multibyte'



[2009-11-20 18:45:56] pierr...@php.net

Thank you for taking the time to report a problem with PHP.
Unfortunately you are not using a current version of PHP -- 
the problem might already be fixed. Please download a new
PHP version from http://www.php.net/downloads.php

If you are able to reproduce the bug with one of the latest
versions of PHP, please change the PHP version on this bug report
to the version you tested and change the status back to "Open".
Again, thank you for your continued support of PHP.





[2009-11-20 17:53:46] ras...@php.net

I tested this on an Ubuntu box and was unable to reproduce the crash. 
And under Valgrind it didn't report anything suspicious either.

I assume this is without curlwrappers enabled?  Please list all your
compile flags.



[2009-11-20 17:22:12] pierr...@php.net

Please try using this snapshot:

  http://snaps.php.net/php5.3-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/





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/50243

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



#50243 [Fbk->Bgs]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread pontus dot alexander at gmail dot com
 ID:   50243
 User updated by:  pontus dot alexander at gmail dot com
 Reported By:  pontus dot alexander at gmail dot com
-Status:   Feedback
+Status:   Bogus
 Bug Type: Reproducible crash
 Operating System: Debian
 PHP Version:  5.3.1
 Assigned To:  pierrick
 New Comment:

Thought I should add. I've been able to reproduce this bug on three
machines since version 5.3. All of them are running Debian Lenny and
have the exact same configure-string as the one supplied in my earlier
comment.

Unfortunately I haven't been able to have anyone else test it on a
non-similar system.


Previous Comments:


[2009-11-21 00:40:42] fel...@php.net

5.3.1 doesn't have a fix for #49936, but it's present in 5.3-SVN.

Have you tested it with a 5.3 snapshot?



[2009-11-21 00:34:37] ras...@php.net

How about a gdb backtrace of the segfault then since I can't reproduce
it here on a very similar OS with the same code and the same compile
flags.



[2009-11-21 00:32:18] pontus dot alexander at gmail dot com

I can reproduce the crash in the recently announced 5.3.1 release. 

Here's my configure-string copied from phpinfo();

'./configure' '--with-config-file-path=/etc/php' '--with-gd'
'--enable-inline-optimization' '--with-curl' '--with-gettext'
'--with-iconv' '--with-openssl' '--enable-xml' '--with-pcre-regex'
'--with-zlib' '--enable-exif' '--enable-magic-quotes' '--enable-sockets'
'--with-mysql' '--with-jpeg-dir=/usr/lib/' '--with-mysqli'
'--enable-mbstring' '--enable-zend-multibyte'



[2009-11-20 18:45:56] pierr...@php.net

Thank you for taking the time to report a problem with PHP.
Unfortunately you are not using a current version of PHP -- 
the problem might already be fixed. Please download a new
PHP version from http://www.php.net/downloads.php

If you are able to reproduce the bug with one of the latest
versions of PHP, please change the PHP version on this bug report
to the version you tested and change the status back to "Open".
Again, thank you for your continued support of PHP.





[2009-11-20 17:53:46] ras...@php.net

I tested this on an Ubuntu box and was unable to reproduce the crash. 
And under Valgrind it didn't report anything suspicious either.

I assume this is without curlwrappers enabled?  Please list all your
compile flags.



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/50243

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



#50243 [Bgs]: Second attempt after successful file_put_contents to FTP causes crash

2009-11-20 Thread pontus dot alexander at gmail dot com
 ID:   50243
 User updated by:  pontus dot alexander at gmail dot com
 Reported By:  pontus dot alexander at gmail dot com
 Status:   Bogus
 Bug Type: Reproducible crash
 Operating System: Debian
-PHP Version:  5.3.1
+PHP Version:  php5.3-200911202330
 Assigned To:  pierrick
 New Comment:

Can no longer reproduce in php5.3-200911202330

Expected result achieved.


Previous Comments:


[2009-11-21 00:42:27] pontus dot alexander at gmail dot com

Thought I should add. I've been able to reproduce this bug on three
machines since version 5.3. All of them are running Debian Lenny and
have the exact same configure-string as the one supplied in my earlier
comment.

Unfortunately I haven't been able to have anyone else test it on a
non-similar system.



[2009-11-21 00:40:42] fel...@php.net

5.3.1 doesn't have a fix for #49936, but it's present in 5.3-SVN.

Have you tested it with a 5.3 snapshot?



[2009-11-21 00:34:37] ras...@php.net

How about a gdb backtrace of the segfault then since I can't reproduce
it here on a very similar OS with the same code and the same compile
flags.



[2009-11-21 00:32:18] pontus dot alexander at gmail dot com

I can reproduce the crash in the recently announced 5.3.1 release. 

Here's my configure-string copied from phpinfo();

'./configure' '--with-config-file-path=/etc/php' '--with-gd'
'--enable-inline-optimization' '--with-curl' '--with-gettext'
'--with-iconv' '--with-openssl' '--enable-xml' '--with-pcre-regex'
'--with-zlib' '--enable-exif' '--enable-magic-quotes' '--enable-sockets'
'--with-mysql' '--with-jpeg-dir=/usr/lib/' '--with-mysqli'
'--enable-mbstring' '--enable-zend-multibyte'



[2009-11-20 18:45:56] pierr...@php.net

Thank you for taking the time to report a problem with PHP.
Unfortunately you are not using a current version of PHP -- 
the problem might already be fixed. Please download a new
PHP version from http://www.php.net/downloads.php

If you are able to reproduce the bug with one of the latest
versions of PHP, please change the PHP version on this bug report
to the version you tested and change the status back to "Open".
Again, thank you for your continued support of PHP.





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/50243

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



#50219 [Opn->Csd]: soap call Segmentation fault on a redirected url

2009-11-20 Thread pierrick
 ID:   50219
 Updated by:   pierr...@php.net
 Reported By:  zedorg at gmail dot com
-Status:   Open
+Status:   Closed
 Bug Type: SOAP related
 Operating System: Any
 PHP Version:  5.3.0
 Assigned To:  pierrick
 New Comment:

This bug has been fixed in SVN.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.




Previous Comments:


[2009-11-21 01:22:33] s...@php.net

Automatic comment from SVN on behalf of pierrick
Revision: http://svn.php.net/viewvc/?view=revision&revision=291104
Log: Fixed bug #50219 (soap call Segmentation fault on a redirected
url).



[2009-11-18 14:41:59] zedorg at gmail dot com

Description:

Making a soap call to an url which redirects, cause segfault in php.

Can reproduce in the following systems and versions: 
php 5.3(win32bit), php 5.2.9(linux, debian 64bit),  php
5.2.6(win32bit),



Reproduce code:
---
$s=new
SoapClient('valid.wsdl',array('location'=>'http://www.horacero.com.mx','classmap'=>array('doAny'=>'DoAny')));
// passes
$s->doAny(null) // segfault here

Expected result:

throwing a SoapFault exception 

Actual result:
--
php Segmentation fault

Here is the last lines from strace output:

...
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("216.52.254.1")}, 28) = 0
fcntl(3, F_GETFL)   = 0x2 (flags O_RDWR)
fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK)= 0
poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(3, "\333\355\1\0\0\1\0\0\0\0\0\0\3www\10horacero\3com\2mx"...,
37, 0, NULL, 0) = 37
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(3, FIONREAD, [136])   = 0
recvfrom(3,
"\333\355\201\200\0\1\0\0\0\1\0\0\3www\10horacero\3com\2"..., 1024, 0,
{sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("216.52.254.1")}, [16]) = 136
close(3)= 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("216.52.254.1")}, 28) = 0
fcntl(3, F_GETFL)   = 0x2 (flags O_RDWR)
fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK)= 0
poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(3, "\271\315\1\0\0\1\0\0\0\0\0\0\3www\10horacero\3com\2mx"...,
48, 0, NULL, 0) = 48
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(3, FIONREAD, [107])   = 0
recvfrom(3,
"\271\315\201\200\0\1\0\0\0\1\0\0\3www\10horacero\3com\2"..., 1024, 0,
{sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("216.52.254.1")}, [16]) = 107
close(3)= 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("216.52.254.1")}, 28) = 0
fcntl(3, F_GETFL)   = 0x2 (flags O_RDWR)
fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK)= 0
poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
sendto(3, "\303a\1\0\0\1\0\0\0\0\0\0\3www\10horacero\3com\2mx"..., 37,
0, NULL, 0) = 37
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 5000) = 1
ioctl(3, FIONREAD, [186])   = 0
recvfrom(3,
"\303a\201\200\0\1\0\1\0\3\0\2\3www\10horacero\3com\2mx"..., 1024, 0,
{sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("216.52.254.1")}, [16]) = 186
close(3)= 0
socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 3
fcntl(3, F_GETFL)   = 0x2 (flags O_RDWR)
fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK)= 0
connect(3, {sa_family=AF_INET, sin_port=htons(80),
sin_addr=inet_addr("208.94.113.194")}, 16) = -1 EINPROGRESS (Operation
now in progress)
poll([{fd=3, events=POLLIN|POLLOUT|POLLERR|POLLHUP, revents=POLLOUT}],
1, 6) = 1
getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0
fcntl(3, F_SETFL, O_RDWR)   = 0
sendto(3, "POST / HTTP/1.1\r\nHost: www.horac"..., 504, MSG_DONTWAIT,
NULL, 0) = 504
poll([{fd=3, events=POLLIN|POLLERR|POLLHUP, revents=POLLIN}], 1, 6)
= 1
recvfrom(3, "HTTP/1.1 302 Object moved\r\nDate:"..., 8192,
MSG_DONTWAIT, NULL, NULL) = 402
close(3)= 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---

The url: www dot horacero dot com dot mx gives the following headers:

HTTP/1.x 302 Object moved
Date: Wed, 18 Nov 2009 14:36:10 GMT
Location: portada/
Content-Length: 129
Content-Type: text/html
Cache-Control: private







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