#41113 [Asn]: another complex memleak

2007-05-02 Thread dmitry
 ID:   41113
 Updated by:   [EMAIL PROTECTED]
 Reported By:  [EMAIL PROTECTED]
 Status:   Assigned
 Bug Type: Scripting Engine problem
 Operating System: Linux
 PHP Version:  5CVS-2007-04-17 (CVS)
 Assigned To:  dmitry
 New Comment:

The problem is clear but unfixable.

$a[0] is compiled into ZEND_FETCH_DIM_R that increments reference count
of $a[0] this reference should be decremented back on $a[0] usage, but
because of exception this statement is never reached.




Previous Comments:


[2007-04-17 08:14:59] [EMAIL PROTECTED]

Description:

The code below causes two small memleaks.

Reproduce code:
---
?php
function err($errno, $errstr, $errfile, $errline) {
throw new Exception($errstr);
}
set_error_handler(err);

function foo() {
$a = array(aaa);
foreach ($a as $o) {
//$this-prop[$a] = foo($undef2); //no leak
//$this-prop[aa] = foo($undef2); //no leak
$this-prop[$a[0]] = foo($undef2); //leak
}
}

try {
foo();
} catch (Exception $e) {
var_dump($e-getMessage());
}
?

Actual result:
--
==10584== 4 bytes in 1 blocks are indirectly lost in loss record 1 of
2
==10584==at 0x401C6CE: malloc (vg_replace_malloc.c:149)
==10584==by 0x82995DF: _emalloc (zend_alloc.c:2231)
==10584==by 0x8299885: _estrndup (zend_alloc.c:2353)
==10584==by 0x82B210F: _zval_copy_ctor_func (zend_variables.c:120)
==10584==by 0x831694C: _zval_copy_ctor (zend_variables.h:45)
==10584==by 0x82D9FAB:
ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_HANDLER
(zend_vm_execute.h:3562)
==10584==by 0x82DA140: ZEND_INIT_ARRAY_SPEC_CONST_UNUSED_HANDLER
(zend_vm_execute.h:3609)
==10584==by 0x82D31F8: execute (zend_vm_execute.h:92)
==10584==by 0x82D371A: zend_do_fcall_common_helper_SPEC
(zend_vm_execute.h:234)
==10584==by 0x82D6614: ZEND_DO_FCALL_SPEC_CONST_HANDLER
(zend_vm_execute.h:1681)
==10584==by 0x82D31F8: execute (zend_vm_execute.h:92)
==10584==by 0x82B3E37: zend_execute_scripts (zend.c:1134)
==10584==by 0x826A9BC: php_execute_script (main.c:1790)
==10584==by 0x831A5B5: main (php_cli.c:1127)
==10584==
==10584==
==10584== 20 (16 direct, 4 indirect) bytes in 1 blocks are definitely
lost in loss record 2 of 2
==10584==at 0x401C6CE: malloc (vg_replace_malloc.c:149)
==10584==by 0x82995DF: _emalloc (zend_alloc.c:2231)
==10584==by 0x82D9F5D:
ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_HANDLER
(zend_vm_execute.h:3559)
==10584==by 0x82DA140: ZEND_INIT_ARRAY_SPEC_CONST_UNUSED_HANDLER
(zend_vm_execute.h:3609)
==10584==by 0x82D31F8: execute (zend_vm_execute.h:92)
==10584==by 0x82D371A: zend_do_fcall_common_helper_SPEC
(zend_vm_execute.h:234)
==10584==by 0x82D6614: ZEND_DO_FCALL_SPEC_CONST_HANDLER
(zend_vm_execute.h:1681)
==10584==by 0x82D31F8: execute (zend_vm_execute.h:92)
==10584==by 0x82B3E37: zend_execute_scripts (zend.c:1134)
==10584==by 0x826A9BC: php_execute_script (main.c:1790)
==10584==by 0x831A5B5: main (php_cli.c:1127)





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


#41257 [NEW]: lookupPrefix, lookupNamespaceURI do not work as expected

2007-05-02 Thread daniel dot oconnor at gmail dot com
From: daniel dot oconnor at gmail dot com
Operating system: Windows, Linux
PHP version:  5.2.1
PHP Bug Type: *General Issues
Bug description:  lookupPrefix, lookupNamespaceURI do not work as expected

Description:

DOMDocument should extend DOMNode
(http://www.w3.org/TR/DOM-Level-3-Core/core.html#i-Document), and should be
able to find any xmlns defined in the top level element.

Currently, DOMDocument-lookupPrefix() and
DOMDocument-lookupNamespaceURI() will never return any values other than
null; or warn developers they are using the wrong method.

Additionally, DOMDocument-lookupPrefix  friends should be able to
recognise xmlns defined in the root node of a document.

Reproduce code:
---
?php
$xml = '?xml version=1.0 encoding=UTF-8?
office:document-content office:class=text office:version=1.0
xmlns:chart=http://openoffice.org/2000/chart;
xmlns:dc=http://purl.org/dc/elements/1.1/;
xmlns:dom=http://www.w3.org/2001/xml-events;
xmlns:dr3d=http://openoffice.org/2000/dr3d;
xmlns:draw=http://openoffice.org/2000/drawing;
xmlns:fo=http://www.w3.org/1999/XSL/Format;
xmlns:form=http://openoffice.org/2000/form;
xmlns:math=http://www.w3.org/1998/Math/MathML;
xmlns:meta=http://openoffice.org/2000/meta;
xmlns:number=http://openoffice.org/2000/datastyle;
xmlns:office=http://openoffice.org/2000/office;
xmlns:ooo=http://openoffice.org/2004/office;
xmlns:oooc=http://openoffice.org/2004/calc;
xmlns:ooow=http://openoffice.org/2004/writer;
xmlns:script=http://openoffice.org/2000/script;
xmlns:style=http://openoffice.org/2000/style;
xmlns:svg=http://www.w3.org/2000/svg;
xmlns:table=http://openoffice.org/2000/table;
xmlns:text=http://openoffice.org/2000/text;
xmlns:xforms=http://www.w3.org/2002/xforms;
xmlns:xlink=http://www.w3.org/1999/xlink;
xmlns:xsd=http://www.w3.org/2001/XMLSchema;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
office:body
table:table table:name=Table13 table:style-name=Table13
table:table-column table:style-name=Table13.A /
table:table-row table:style-name=Table13.1
table:table-cell table:style-name=Table13.A1
table:value-type=string
text:p text:style-name=P84Important Notes and
Qualifications/text:p
/table:table-cell
/table:table-row
/table:table
text:p text:style-name=P88lt; lt; func_image(photograph)
gt; gt;/text:p
/office:body
/office:document-content';

$document = new DOMDocument('1.0', 'UTF-8');
$document-loadXML($xml);

foreach
($document-getElementsByTagNameNS('http://openoffice.org/2000/table',
'table') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}
print \n\n;
foreach ($document-getElementsByTagName('*') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}
print \n\n;
foreach ($document-getElementsByTagNameNS('*', '*') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}

print \n\n;
foreach
($document-getElementsByTagNameNS('http://openoffice.org/2000/table', '*')
as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}

print \n\n;
foreach
($document-getElementsByTagNameNS('http://openoffice.org/2000/table', '*')
as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}

print \n\n;
foreach
($document-getElementsByTagNameNS('http://openoffice.org/2000/table',
'table') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}

Expected result:

$document-lookupNamespaceURI() and $element-lookupNamespaceURI() should
return identical results.

Actual result:
--
local name: table, prefix: table xmlns
(element):http://openoffice.org/2000/table xmlns (document):

-- 
Edit bug report at http://bugs.php.net/?id=41257edit=1
-- 
Try a CVS snapshot (PHP 4.4): 
http://bugs.php.net/fix.php?id=41257r=trysnapshot44
Try a CVS snapshot (PHP 5.2): 
http://bugs.php.net/fix.php?id=41257r=trysnapshot52
Try a CVS snapshot (PHP 6.0): 

#41097 [Asn-Csd]: ext/soap returning associative array as indexed without using WSDL

2007-05-02 Thread dmitry
 ID:   41097
 Updated by:   [EMAIL PROTECTED]
 Reported By:  r dot korving at xit dot nl
-Status:   Assigned
+Status:   Closed
 Bug Type: SOAP related
 Operating System: Debian
 PHP Version:  5.2.1
 Assigned To:  dmitry
 New Comment:

Your expectation is wrong because PHP converts numeric string indeces
into integer.

$ sapi/cli/php -r 'var_dump(array(5 = Foo, 10 = Bar));'
array(2) {
  [5]=
  string(3) Foo
  [10]=
  string(3) Bar
}

BTW I fixed ext/soap to use Apache:Map instead of SOAP-ENC:Array in
case of partial arrays (missing indeces).

FIXED in CVS HEAD and PHP_5_2.


Previous Comments:


[2007-04-16 06:59:17] r dot korving at xit dot nl

Description:

Returning array('5' = 'Foo', '10' = 'Bar') from a SoapServer handler
class ends up as array(0 = 'Foo', 1 = 'Bar') at the client end. But
array('a' = 'Foo', 'b' = 'Bar') does end up correctly. It only fails
with numeric keys. I'm not using WSDL in this case. I think integer keys
that are not in a simple 0..n range should end up in an associative
array, not indexed with new 0..n keys.

Reproduce code:
---
?php

class MyHandler
{
  public function getData()
  {
return array('5' = 'Foo', '10' = 'Bar');
  }
}


// initialize soap-server:

$soap = new SoapServer(null, array('uri' = 'http://uri/', 'encoding'
= 'ISO-8859-1'));
$soap-setClass('MyHandler');
$soap-handle();

?

Expected result:

array('5' = 'Foo', '10' = 'Bar')

Actual result:
--
array(0 = 'Foo', 1 = 'Bar')





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


#41151 [Asn-Fbk]: SOAP request is wrong when using subclass

2007-05-02 Thread dmitry
 ID:   41151
 Updated by:   [EMAIL PROTECTED]
 Reported By:  m dot necib at akrobat dot fr
-Status:   Assigned
+Status:   Feedback
 Bug Type: SOAP related
 Operating System: Windows XP
 PHP Version:  5.2.1
 Assigned To:  dmitry
 New Comment:

I just committed test file ext/soap/tests/schema/schema085.phpt, that
demonstrates proper element ordering. In your example you probably do
somthing wrong. I cannot say that exactly is wrong as you didn't provide
full reproduce case, probably you object isn't encoded using WSDL.
In case if you like me to look into problem please provide full example
(without ...) including full WSDL file.


Previous Comments:


[2007-04-20 16:55:19] m dot necib at akrobat dot fr

WSDL :

complexType name=A
sequence
  element name=a type=xsd:int/
/sequence
/complexType

complexType name=B
  complexContent
 extension base=impl:A
sequence
  element name=b type=xsd:int/
/sequence
 /extension
  /complexContent
/complexType



[2007-04-20 16:47:37] m dot necib at akrobat dot fr

Description:

When using subclass as a value in WSDL mode,
the properties are written in the wrong order :
the child class properties are written _before_
the parent properties.

Reproduce code:
---
PHP:

class A
{
public $a ;
}

class B extends A
{
public $b ;
}

$client = new SoapClient(...) ;

$var = new SoapVar( new B(), SOAP_ENC_OBJECT, 'B', 'http://myns/' ) ;
$client-foo($var) ;

Expected result:

SOAP request :

parametres xsi:type=B 
  a/a
  b/b
/parametres

Actual result:
--
SOAP request :

parametres xsi:type=B 
  b/b
  a/a
/parametres





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


#41258 [NEW]: setAttributeNS has inconsistent behaviour when raising exceptions

2007-05-02 Thread daniel dot oconnor at gmail dot com
From: daniel dot oconnor at gmail dot com
Operating system: 
PHP version:  5.2.1
PHP Bug Type: *XML functions
Bug description:  setAttributeNS has inconsistent behaviour when raising 
exceptions

Description:

Inconsistent behaviour when raising exceptions. No exception is raised
until line 10

Reproduce code:
---
?php
$d = new DOMDocument();
$example = $d-createElementNS('http://foo.com','example');
$example-setAttributeNS('http://bar.com', 'bar:bar',value);
$example-setAttributeNS('http://bar.com', 'monkey',value);

$d = new DOMDocument();
$example = $d-createElementNS('http://foo.com','example');
$example-setAttributeNS('http://fish.com', 'bar:bar',value);
$example-setAttributeNS('http://bar.com', 'monkey',value);

Expected result:

 1. An exception raised on the second setAttributeNS (line 4)
 2. A more meaningful error than 'Namespace Error' - No namespace prefix
found for http://fish.com

Actual result:
--
An exception on line 10

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


#32002 [Com]: FATAL erealloc() Restarts

2007-05-02 Thread niteman dot es at gmail dot com
 ID:   32002
 Comment by:   niteman dot es at gmail dot com
 Reported By:  tlamay at cte1 dot com
 Status:   No Feedback
 Bug Type: Unknown/Other Function
 Operating System: Windows 2003
 PHP Version:  4CVS-2005-02-17
 New Comment:

I had a Windows 2003 with apache 2.0.59 and php 5.0.5 (the machine was
an Athlon 2800+ with 1GB of RAM) working fine.

Since I needed more power for my web, I migrated the whole thing with
the same configuration to a Dual Core AMD Opteron 1212 HE with 2GB of
RAM and this issue started to happen.

I think this could be related with the multiprocesor implementation
over windows 2003, but it has a quite inconsistent behaviour (I couldn't
reproduce the bug at my will).

Right now I have switched from loading php as a module of apache to the
traditional cgi aproach. I'll follow up the issue and post a comment
both if the issue is fixed with the change or if it is not.

No doubt to contact me if you need further testing on this.

Sorry for my bad english.

Kind Regards


Previous Comments:


[2007-02-02 01:42:52] bob at cave dot net

This is not just an apache problem. I am using WebSite Pro under
win2000 with php 4.x and get the same error. The website service dies,
and the watchdog needs to restart it.



[2006-12-23 02:49:40] vst at gamervision dot net

OS: Windows XP Pro and Server 2003
PHP: 4.4.4
Apache: 2.23
CPU: AMD X2 4400+
RAM: 2GB DDR

I have the same issue and consider it as CRITICAL. I tried it on many
Windows systems and the same results. If I add 'Win32DisableAcceptEx'
then I'm getting this issue. But I must use 'Win32DisableAcceptEx'
because without it I'm getting some Winsock issues. I can't upgrade to
PHP 5 because some of the parts in my side having MySQL connection
issues with PHP 5. 

PLEASE!! PLEASE FIX IT ALREADY!!



[2006-12-21 21:00:11] csaba at ai-media dot com

Our configuration:

Windows2003 Web Edition
PHP 5.2, ZendOptimizer 3
Apache 2.2.3
Tomcat 5.5.17

To reproduce: this happens consistently on the Windows platform as long
as Win32DisableAcceptEx is enabled in the Apache httpd.conf. Tested with
Apache2.0.59, PHP 5.1.6 and PHP 5.2. We get FATAL:  erealloc():  Unable
to allocate XXX bytes in the Apache2 error log with 5.1.6 and no
feedback to the user (could not connect to server), with 5.2 the user
sees the same error message in the browser.

There's an open issue in the Apache2 bug list here:
http://issues.apache.org/bugzilla/show_bug.cgi?id=34664#c8

Comment 8 is particularly interesting: one of the Apache developers say
they do not call erealloc. At this point (to me) it's not clear whether
this is a PHP or an Apache bug, but it's definitely related to both.



[2006-12-12 23:04:20] alex_25052 at hotmail dot com

Same thing here.

Tons of FATAL:  erealloc(): Unable to allocate  bytes

I config is
PHP 4.4.4
Apache 2.2.3
on Windows 2003 Xeon Dual web machine, 2Gb ram.

Sometimes apache restarts by itself, sometimes it doesn't and i have to
do it manualy

Drives me nuts... :)



[2006-12-03 12:53:49] levi_tedder at hotmail dot com

I have installed PHP 5.2 on the server where I had this issue, and it
seems to have fixed it. No fatal for 24 hours, but I will let you know
if it reappears when traffic peeks (although traffic was not an issue
when this happened).



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

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


#41004 [Asn-Csd]: minOccurs=0 and null class member variable

2007-05-02 Thread dmitry
 ID:   41004
 Updated by:   [EMAIL PROTECTED]
 Reported By:  w dot antoine at free dot fr
-Status:   Assigned
+Status:   Closed
 Bug Type: SOAP related
 Operating System: Windows 2000
 PHP Version:  5.2.1
 Assigned To:  dmitry
 New Comment:

Fixed in CVS HEAD and PHP_5_2.


Previous Comments:


[2007-04-11 18:22:25] w dot antoine at free dot fr

Hi

The test case (the wsdl file and the client classes are available on:
http://w.antoine.free.fr/php-bug-41004-testCase.zip



[2007-04-05 19:57:10] [EMAIL PROTECTED]

Thank you for this bug report. To properly diagnose the problem, we
need a short but complete example script to be able to reproduce
this bug ourselves. 

A proper reproducing script starts with ?php and ends with ?,
is max. 10-20 lines long and does not require any external 
resources such as databases, etc. If the script requires a 
database to demonstrate the issue, please make sure it creates 
all necessary tables, stored procedures etc.

Please avoid embedding huge scripts into the report.





[2007-04-05 12:12:10] w dot antoine at free dot fr

Description:

I use the classmap option of the soap client constructed from the
WSDL.
In my wsdl file i have a complex type with elements where minOccurs=0
et maxOccurs=1.

When the corresponding class member is null, an empty element is send.
How i can tell the soap client to not send elements when minOccurs=0
and 
the value is NULL?

The webservice server is apache axis

Reproduce code:
---
Complex type definition:
complexType name=SimulateRequest
  all
element name=product1Type type=impl:Product1Type/
element name=product1BankCardTypeCd
type=impl:Product1BankCardTypeCd minOccurs=0/
  /all
/complexType

Php Code to call:
$simulationRequest[0]-setProduct1Type(CLA);
$simulationRequest[0]-setProduct1BankCardTypeCd(NULL);

Php class SimulateRequest extract:
class SimulateRequest{
   private  $product1Type ;
   public  function  getProduct1Type(){
return $this-product1Type;
   }
   public function setProduct1Type($param){
 $this-product1Type=$param;
   }
   private  $product1BankCardTypeCd ;
   public  function  getProduct1BankCardTypeCd(){
 return $this-product1BankCardTypeCd;
   }
   public function setProduct1BankCardTypeCd($param){
$this-product1BankCardTypeCd=$param;
   }


Expected result:

ns1:simulationRequest
 ns1:product1TypeREV/ns1:product1Type
/ns1:simulationRequest


Actual result:
--
ns1:simulationRequest
 ns1:product1TypeREV/ns1:product1Type
 ns1:product1BankCardTypeCd/
/ns1:simulationRequest






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


#41155 [Asn-Csd]: Virtual drives return failed to open dir: Bad file descriptor

2007-05-02 Thread dmitry
 ID:   41155
 Updated by:   [EMAIL PROTECTED]
 Reported By:  fantasysportswire at yahoo dot com
-Status:   Assigned
+Status:   Closed
 Bug Type: *Directory/Filesystem functions
 Operating System: WINXP SP 2
 PHP Version:  5.2.1
 Assigned To:  dmitry
 New Comment:

The bug seems to be already fixed in 5.2.2RC2.


Previous Comments:


[2007-04-26 06:07:11] fantasysportswire at yahoo dot com

Just an FYI.

I do know that this issue did not exist in 5.0.5 ... I did not use any
versions between 5.0.5 and 5.2.1 on Windows... so not sure where it
first appeared - though six months ago or so or so I ran into it with
the newest version... and switched back to 5.0.5... not sure if that was
still 2.0 or 2.1...



[2007-04-21 08:15:55] fantasysportswire at yahoo dot com

It also occurs with 5.2.2RC2-dev



[2007-04-21 08:12:39] fantasysportswire at yahoo dot com

Description:

If I use  scandir on a virtual drive it returns: 

Warning: scandir(w:): failed to open dir: Bad file descriptor

I have also tried w:\ and w:/ to the same result.

However... scandir(w:\\folder) works just fine.


realpath does almost the same thing... if from w: I run a script with:

?
echo realpath(.);
?

and run it like 

php -n script.php

... I get nothing


If I go into folder and run it

php -n w:\script.php

I returns

w:\folder


Just to repeat - this only seems to happen in a Virtual (subst) root
path.  Inside folders in the virtual path work fine.

Both incidents happen using the -n flag, so there is no possible
setting issue.


Reproduce code:
---
?
echo realpath(.).\n;
print_r(scandir(.));
?

Expected result:

Current Path and an array dump of the files.

Actual result:
--
Nothing for realpath and Warning: scandir(w:): failed to open dir: Bad
file descriptor for scandir





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


#41259 [NEW]: IIS Virtual Directory on a share doesn't work

2007-05-02 Thread moreno dot feltscher at emsservices dot ch
From: moreno dot feltscher at emsservices dot ch
Operating system: Windows Server 2003
PHP version:  5.2.1
PHP Bug Type: IIS related
Bug description:  IIS Virtual Directory on a share doesn't work

Description:

On my IIS-Website I've got a Virtual Directory, which's target is on
another server as share. When I try to get a file (eg. include
'directory_on_other_server/test.php';) from there over the include-function
it doesn't work and I have a blank screen.

Is this a known issue?
How can I solve this problem?


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


#41192 [Asn-Csd]: Per Directory Values only work for one key

2007-05-02 Thread dmitry
 ID:   41192
 Updated by:   [EMAIL PROTECTED]
 Reported By:  martin at itmission dot com
-Status:   Assigned
+Status:   Closed
 Bug Type: PHP options/info functions
 Operating System: Windows Server 2003
 PHP Version:  5.2.1
 Assigned To:  dmitry
 New Comment:

Fixed in CVS HEAD and PHP_5_2.


Previous Comments:


[2007-04-30 22:12:08] simon at bleif dot de

Can be reproduced in Windows Server 2003 x64 R2. Filed a bugreport
regarding the same issue (see http://bugs.php.net/bug.php?id=41233).

I have to add that all entries are being read from the registry
correctly (result: success in Regmon), but are not (as he already said)
applied.



[2007-04-26 11:32:16] martin at itmission dot com

I downloaded the newest Win32 Snapshot from snaps.php.net:

php5.2 (zip) (9.5M)
Built On: Apr 26, 2007 08:30 GMT

In this version of PHP (5.2.2RC2-dev), Per Directory Values do not work
at all.  My phpinfo page shows display errors: off for both sites.

When I roll back to PHP-5.2.1, it works for the first website in the
registry, and with PHP-5.2.0, it works for both of them.



[2007-04-26 11:05:39] [EMAIL PROTECTED]

The bug should be already fixed. Could you check snapshot from
http://snaps.php.net



[2007-04-26 03:09:02] martin at itmission dot com

I am assuming that it has something to do with the massive change to
registry.c between 5.2.0 and 5.2.1 changelogged as implemented registry
cache that prevent registry lookup on each request. In case of
modification of corresponding registry-tree PHP will reload it
automatic.

Perhaps something in the way it's being cached is not working properly.
 The simpler code of 5.2.0 works as expected (and it hits the registry
with every request, but I can live with that).



[2007-04-26 02:13:08] martin at itmission dot com

Possibly noteworthy, the exact same configuration works fine in PHP
5.2.0.



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

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


#41195 [Opn]: Indexing non-array should raise notice

2007-05-02 Thread tony2001
 ID:   41195
 Updated by:   [EMAIL PROTECTED]
 Reported By:  lbayuk at pobox dot com
 Status:   Open
-Bug Type: Arrays related
+Bug Type: Feature/Change Request
 Operating System: Linux
 PHP Version:  5.2.1
 New Comment:

Change requests belong to the Feature/Change Request category.
Reclassified.


Previous Comments:


[2007-05-01 01:32:05] lbayuk at pobox dot com

Changed category... I thought I put it in as Arrays related, but I
guess I missed and it ended up as Feature/Change Request. To me, this
is either a bug, or a documentation improvement request, not a feature
request.



[2007-04-26 01:38:31] lbayuk at pobox dot com

Description:

If I index a scalar or NULL variable as if it were an array, I get NULL
back with no warning or notice. This is true for any index value,
including 0.  I expected an Undefined offset or incorrect type message. 
The manual says an integer variable = n will convert to array(0=$n);
that works on casting to array but not on indexing.


Reproduce code:
---
?php
error_reporting(E_ALL+E_STRICT);
$arry = array(1=1);
$notarry = NULL;
$intvar = 123;
echo 1. arry[1] =  . $arry[1] . \n;
echo 2. arry[2] =  . $arry[2] . \n;
echo 3. intvar[0] =  . $intvar[0] . \n;
echo 4. intvar[1] =  . $intvar[1] . \n;
echo 5. notarry[1] =  . $notarry[1] . \n;


Expected result:

Notice: Undefined offset (or incorrect type) for (2), (3), (4), and
(5). Or maybe (3) should echo 123 via implicit cast. But only (2)
raises a Notice; the others just echo NULL. 


Actual result:
--
1. arry[1] = 1

Notice: Undefined offset:  2 in /a5/home/ljb/lang/php/p.php on line 7
2. arry[2] = 
3. intvar[0] = 
4. intvar[1] =
5. notarry[1] =






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


#41010 [Opn-Bgs]: Bug #33480 still in php 4.4.6

2007-05-02 Thread tony2001
 ID:   41010
 Updated by:   [EMAIL PROTECTED]
 Reported By:  hack988 at gmail dot com
-Status:   Open
+Status:   Bogus
 Bug Type: dBase related
 Operating System: win32
 PHP Version:  4.4.6
 New Comment:

.


Previous Comments:


[2007-05-01 13:01:18] hack988 at gmail dot com

This module has a mistake, You should use dbase_get_record() instead
dbase_get_record_with_names(). The dbase_add and dbase_replace cannot
use associative matrix.

$db = dbase_open( 'test.dbf', 2 );
$record = dbase_get_record_with_names ( $db, 1);
unset($record['deleted']);
dbase_add_record( $db, $record );
dbase_close($db);

this discription come from http://bugs.php.net/bug.php?id=33480
I test that discripted bug at php 4.4.6 it still report error

use code 
$record=array('name'='hack988','from'='china');
dbase_add_record( $db, $record );

php still report dbase_add_record function failed

but use code 
$record=array(0='hack988',1='china');
dbase_add_record( $db, $record );

the function dbase_add_record work will



[2007-04-18 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.



[2007-04-10 14:05:26] [EMAIL PROTECTED]

Not enough information was provided for us to be able
to handle this bug. Please re-read the instructions at
http://bugs.php.net/how-to-report.php

If you can provide more information, feel free to add it
to this bug and change the status back to Open.

Thank you for your interest in PHP.






[2007-04-06 12:58:43] hack988 at gmail dot com

Description:

Bug #33480 still in php 4.4.6
The dbase_add cannot
use associative matrix.







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


#41257 [Opn-Asn]: lookupPrefix, lookupNamespaceURI do not work as expected

2007-05-02 Thread tony2001
 ID:   41257
 Updated by:   [EMAIL PROTECTED]
 Reported By:  daniel dot oconnor at gmail dot com
-Status:   Open
+Status:   Assigned
 Bug Type: DOM XML related
 Operating System: Windows, Linux
 PHP Version:  5.2.1
-Assigned To:  
+Assigned To:  rrichards


Previous Comments:


[2007-05-02 07:37:18] daniel dot oconnor at gmail dot com

Description:

DOMDocument should extend DOMNode
(http://www.w3.org/TR/DOM-Level-3-Core/core.html#i-Document), and should
be able to find any xmlns defined in the top level element.

Currently, DOMDocument-lookupPrefix() and
DOMDocument-lookupNamespaceURI() will never return any values other
than null; or warn developers they are using the wrong method.

Additionally, DOMDocument-lookupPrefix  friends should be able to
recognise xmlns defined in the root node of a document.

Reproduce code:
---
?php
$xml = '?xml version=1.0 encoding=UTF-8?
office:document-content office:class=text office:version=1.0
xmlns:chart=http://openoffice.org/2000/chart;
xmlns:dc=http://purl.org/dc/elements/1.1/;
xmlns:dom=http://www.w3.org/2001/xml-events;
xmlns:dr3d=http://openoffice.org/2000/dr3d;
xmlns:draw=http://openoffice.org/2000/drawing;
xmlns:fo=http://www.w3.org/1999/XSL/Format;
xmlns:form=http://openoffice.org/2000/form;
xmlns:math=http://www.w3.org/1998/Math/MathML;
xmlns:meta=http://openoffice.org/2000/meta;
xmlns:number=http://openoffice.org/2000/datastyle;
xmlns:office=http://openoffice.org/2000/office;
xmlns:ooo=http://openoffice.org/2004/office;
xmlns:oooc=http://openoffice.org/2004/calc;
xmlns:ooow=http://openoffice.org/2004/writer;
xmlns:script=http://openoffice.org/2000/script;
xmlns:style=http://openoffice.org/2000/style;
xmlns:svg=http://www.w3.org/2000/svg;
xmlns:table=http://openoffice.org/2000/table;
xmlns:text=http://openoffice.org/2000/text;
xmlns:xforms=http://www.w3.org/2002/xforms;
xmlns:xlink=http://www.w3.org/1999/xlink;
xmlns:xsd=http://www.w3.org/2001/XMLSchema;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;
office:body
table:table table:name=Table13 table:style-name=Table13
table:table-column table:style-name=Table13.A /
table:table-row table:style-name=Table13.1
table:table-cell table:style-name=Table13.A1
table:value-type=string
text:p text:style-name=P84Important Notes and
Qualifications/text:p
/table:table-cell
/table:table-row
/table:table
text:p text:style-name=P88lt; lt; func_image(photograph)
gt; gt;/text:p
/office:body
/office:document-content';

$document = new DOMDocument('1.0', 'UTF-8');
$document-loadXML($xml);

foreach
($document-getElementsByTagNameNS('http://openoffice.org/2000/table',
'table') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}
print \n\n;
foreach ($document-getElementsByTagName('*') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}
print \n\n;
foreach ($document-getElementsByTagNameNS('*', '*') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}

print \n\n;
foreach
($document-getElementsByTagNameNS('http://openoffice.org/2000/table',
'*') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}

print \n\n;
foreach
($document-getElementsByTagNameNS('http://openoffice.org/2000/table',
'*') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}

print \n\n;
foreach
($document-getElementsByTagNameNS('http://openoffice.org/2000/table',
'table') as $element) {
echo 'local name: ', $element-localName, ', prefix: ',
$element-prefix, ' xmlns (element):',
$element-lookupNamespaceURI($element-prefix), ' xmlns (document):',
$document-lookupNamespaceURI($element-prefix), \n;
}

Expected result:

$document-lookupNamespaceURI() and $element-lookupNamespaceURI()
should return identical results.

Actual result:
--
local name: table, prefix: table xmlns
(element):http://openoffice.org/2000/table xmlns (document):



#41259 [Opn-Fbk]: IIS Virtual Directory on a share doesn't work

2007-05-02 Thread tony2001
 ID:   41259
 Updated by:   [EMAIL PROTECTED]
 Reported By:  moreno dot feltscher at emsservices dot ch
-Status:   Open
+Status:   Feedback
 Bug Type: IIS related
 Operating System: Windows Server 2003
 PHP Version:  5.2.1
 New Comment:

Please try using this CVS snapshot:

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




Previous Comments:


[2007-05-02 10:07:11] moreno dot feltscher at emsservices dot ch

Description:

On my IIS-Website I've got a Virtual Directory, which's target is on
another server as share. When I try to get a file (eg. include
'directory_on_other_server/test.php';) from there over the
include-function it doesn't work and I have a blank screen.

Is this a known issue?
How can I solve this problem?






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


#41255 [Opn-Bgs]: move_uploaded_file wrong permissions cgi

2007-05-02 Thread tony2001
 ID:   41255
 Updated by:   [EMAIL PROTECTED]
 Reported By:  agrimm61 at gmail dot com
-Status:   Open
+Status:   Bogus
 Bug Type: Filesystem function related
 Operating System: Linux
 PHP Version:  4.4.6
 New Comment:

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.




Previous Comments:


[2007-05-02 00:22:13] agrimm61 at gmail dot com

Description:

When moving an uploaded file with move_uploaded_file while php is
running in cgi mode the originated file has permissions 600. copy()
creates a file with the expected permissions 644. 
As a result the webserver isn't able to read the file.
Safe_Mode is off!

Reproduce code:
---
?
echo umask();
copy($_FILES['userfile']['tmp_name'],
./.$_FILES['userfile']['name']..copy);
move_uploaded_file($_FILES['userfile']['tmp_name'],
./.$_FILES['userfile']['name']);

?

Expected result:

output of 18 which is the right umask ( 022 ), so permissions should be
set to 644.

file moved by copy has permissions 644
file moved by move_uploaded_file has permissions 644

Actual result:
--
output of 18 which is the right umask ( 022 ), so permissions should be
set to 644.

file moved by copy has permissions 644
file moved by move_uploaded_file has permissions 600

As a hint i added some lines in basic_functions.c to get the expected
behaviour. Here is the patch :


--- ext/standard/basic_functions.c.orig 2007-01-01 10:46:47.0
+0100
+++ ext/standard/basic_functions.c  2007-05-02 01:43:22.0
+0200
@@ -2867,10 +2867,12 @@

VCWD_UNLINK(Z_STRVAL_PP(new_path));
if (rename(Z_STRVAL_PP(path), Z_STRVAL_PP(new_path)) == 0) {
+   VCWD_CHMOD(Z_STRVAL_PP(new_path),420);
successful = 1;
} else
if (php_copy_file(Z_STRVAL_PP(path),
Z_STRVAL_PP(new_path) TSRMLS_CC) == SUCCESS) {
VCWD_UNLINK(Z_STRVAL_PP(path));
+   VCWD_CHMOD(Z_STRVAL_PP(new_path),420);
successful = 1;
}






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


#41253 [Opn-Bgs]: session_start Warnings caught by error handler produce E_Fatal

2007-05-02 Thread tony2001
 ID:   41253
 Updated by:   [EMAIL PROTECTED]
 Reported By:  ralph at smashlabs dot com
-Status:   Open
+Status:   Bogus
 Bug Type: Session related
 Operating System: Linux
 PHP Version:  5.2.1
 New Comment:

I don't see anything wrong here.
You're trying to throw an exception when the engine is shutting down,
so you get a pretty much expected fatal error.


Previous Comments:


[2007-05-01 16:17:53] ralph at smashlabs dot com

Description:

Abstract: when handling php errors via set_error_handler() with the
intention of throwing a catchable error, an E_FATAL error is triggered.

Details: This is similar to the error you might see when attempting to
throw an exception from an objects destructor.  The internal pointer to
the unwinding stack is lost and/or blown away.

without the error handler session_start with an invalid save_path will
produce an E_WARNING

Reproduce code:
---
?

ini_set('session.save_path', '/var/log'); 
set_error_handler('save_handler', E_ALL); 
try { 
session_start(); 
} catch (Exception $e) { 
echo $e-getMessage(); 
} 

function save_handler($errno, $errmsg) 
{ 
throw new Exception('Error caught and thrown as exception: ' .
$errmsg); 
}  


Expected result:

Error caught and thrown as exception: session_start():
open(/var/log/sess_3e97dad0fe4ce6f285e97593471f2c88, O_RDWR) failed:
Permission denied (13)

Actual result:
--
Error caught and thrown as exception: session_start():
open(/var/log/sess_3e97dad0fe4ce6f285e97593471f2c88, O_RDWR) failed:
Permission denied (13)
Fatal error: Exception thrown without a stack frame in Unknown on line
0





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


#41250 [Opn-Bgs]: Filter SANITIZE_STRING only filters backslash when escaping

2007-05-02 Thread stas
 ID:   41250
 Updated by:   [EMAIL PROTECTED]
 Reported By:  david at emomentum dot co dot uk
-Status:   Open
+Status:   Bogus
 Bug Type: Filter related
 Operating System: Windows XP
 PHP Version:  5CVS-2007-05-01 (snap)
 New Comment:

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

Neither example actually filters backslash. First example doesn't even
see backslash since \' is parsed as one symbol - single quote, escaped
by the backslash. I think if you intend to use it with SQL it's better
to use either FILTER_SANITIZE_MAGIC_QUOTES or encoding filter.


Previous Comments:


[2007-05-01 09:52:31] david at emomentum dot co dot uk

Description:

The filter FILTER_SANITIZE_STRING only filters out a backslash when it
is escaping something. This means if a backslash is entered into a form
without escaping anything, it will not be filtered and could be executed
into SQL, therefore triggering an escape within the SQL and generating
an error.

Reproduce code:
---
?php
$value = '\'example';
echo filter_var($value, FILTER_SANITIZE_STRING).'br /';

$value = '\example';
echo filter_var($value, FILTER_SANITIZE_STRING).'br /';
?

Expected result:

'example
example

Actual result:
--
'example
\example





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


#41258 [Opn-Bgs]: setAttributeNS has inconsistent behaviour when raising exceptions

2007-05-02 Thread rrichards
 ID:  41258
 Updated by:  [EMAIL PROTECTED]
 Reported By: daniel dot oconnor at gmail dot com
-Status:  Open
+Status:  Bogus
 Bug Type:DOM XML related
 PHP Version: 5.2.1
 New Comment:

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

Line 4 is fine as namespace URI with an associated prefix already
exists (it was created when from line 3). The prefix gets attached to
the attribute. Error messages are not a bug, but feel free to open a
feature request for more verbose messages though.


Previous Comments:


[2007-05-02 08:55:59] daniel dot oconnor at gmail dot com

Description:

Inconsistent behaviour when raising exceptions. No exception is raised
until line 10

Reproduce code:
---
?php
$d = new DOMDocument();
$example = $d-createElementNS('http://foo.com','example');
$example-setAttributeNS('http://bar.com', 'bar:bar',value);
$example-setAttributeNS('http://bar.com', 'monkey',value);

$d = new DOMDocument();
$example = $d-createElementNS('http://foo.com','example');
$example-setAttributeNS('http://fish.com', 'bar:bar',value);
$example-setAttributeNS('http://bar.com', 'monkey',value);

Expected result:

 1. An exception raised on the second setAttributeNS (line 4)
 2. A more meaningful error than 'Namespace Error' - No namespace
prefix found for http://fish.com

Actual result:
--
An exception on line 10





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


#41250 [Bgs]: Filter SANITIZE_STRING only filters backslash when escaping

2007-05-02 Thread derick
 ID:   41250
 Updated by:   [EMAIL PROTECTED]
 Reported By:  david at emomentum dot co dot uk
 Status:   Bogus
 Bug Type: Filter related
 Operating System: Windows XP
 PHP Version:  5CVS-2007-05-01 (snap)
 New Comment:

You should use bind/prepared queries for SQL, definitely *not* the
magic quotes filter.


Previous Comments:


[2007-05-02 12:20:43] [EMAIL PROTECTED]

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

Neither example actually filters backslash. First example doesn't even
see backslash since \' is parsed as one symbol - single quote, escaped
by the backslash. I think if you intend to use it with SQL it's better
to use either FILTER_SANITIZE_MAGIC_QUOTES or encoding filter.



[2007-05-01 09:52:31] david at emomentum dot co dot uk

Description:

The filter FILTER_SANITIZE_STRING only filters out a backslash when it
is escaping something. This means if a backslash is entered into a form
without escaping anything, it will not be filtered and could be executed
into SQL, therefore triggering an escape within the SQL and generating
an error.

Reproduce code:
---
?php
$value = '\'example';
echo filter_var($value, FILTER_SANITIZE_STRING).'br /';

$value = '\example';
echo filter_var($value, FILTER_SANITIZE_STRING).'br /';
?

Expected result:

'example
example

Actual result:
--
'example
\example





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


#41260 [NEW]: Arrays in Forms laid out using tables

2007-05-02 Thread danielcottrell at operamail dot com
From: danielcottrell at operamail dot com
Operating system: Web Server is running Windows
PHP version:  5.2.2RC2
PHP Bug Type: Unknown/Other Function
Bug description:  Arrays in Forms laid out using tables

Description:

If you use javascript to create a textbox in forms which is laid out using
tables, the data from the new elements will not be detected by php. This
does not happen with the same script where tables are not used (I have
before and after to show below).

post_max_size was set to 20M and upload_max_filesize was set to 30M in
php.ini

Reproduce code:
---
---Script A - Tableless --

?

if(isset($_POST['submit']))
{
  foreach($_POST['animals'] as $anim = $a)
  {
echo $anim.' '.$a.'br /';
  }
}

?

!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN
http://www.w3.org/TR/html4/loose.dtd;
html
head
script language=javascript
!--
var curUser=3;

function add_row()
{
  var af=document.getElementById('anim_tab');

  //First Name
  var inone=document.createElement(input);
  inone.name=animals[+curUser+];
  inone.type=text;
  inone.value=;
  //Append the cells to the row
  var myp=document.createElement('p');
  
  af.appendChild(inone);
  af.appendChild(myp);
  curUser++;
}

--
/script

titleUntitled Document/title
meta http-equiv=Content-Type content=text/html; charset=iso-8859-1
/head

body
form method=post action= id=anim_form

div style=border:0; id=anim_tab
?
  for($i=0;$i3;$i++)
  {
echo input type=\text\ name=\animals[]\ style=\width=400px;\
/p /\n;
  }
?
/div
input type=button name=add value=Add onClick=add_row(); /
input type=submit name=submit value=submit /
/form

/body
/html


--Script B - Tables


?

if(isset($_POST['submit']))
{
  foreach($_POST['animals'] as $anim = $a)
  {
echo $anim.' '.$a.'br /';
  }
}

?

!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN
http://www.w3.org/TR/html4/loose.dtd;
html
head
script language=javascript
!--
var curUser=3;

function add_row()
{
  var af=document.getElementById(anim_tab);

  var lr = af.rows.length;
  
  var row = document.createElement('tr');
  var td1=document.createElement('td');
  
  //First Name
  var inone=document.createElement(input);
  inone.type=text;
  inone.name=animals[+curUser+];
  
  td1.appendChild(inone);
  row.appendChild(td1);
  af.appendChild(row);
  
  curUser++;
}
--
/script

titleUntitled Document/title
meta http-equiv=Content-Type content=text/html; charset=iso-8859-1
/head

body
table id=anim_tab
form method=post action= id=anim_form

?
  for($i=0;$i3;$i++)
  {
echo trtdinput type=\text\ name=\animals[]\
style=\width=400px;\ //td/tr;
  }
?
/table
input type=button name=add value=Add onClick=add_row(); /
input type=submit name=submit value=submit /
/form

/body
/html

Expected result:

Data from the textboxes created using the add button should be displayed
when submitted.

The table version works when using IE7 but not when using Opera 9.20 and
Firefox 2. The tableless version works in all browsers.

Actual result:
--
Only data from the original form elements is displayed not the javascript
created ones.

Could be a browser bug since IE7 delivers the data fine, but why not
standards compliant browers?


Please don't just fob me off by telling me it's already been fixed.

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

#41260 [Opn-Bgs]: Arrays in Forms laid out using tables

2007-05-02 Thread tony2001
 ID:   41260
 Updated by:   [EMAIL PROTECTED]
 Reported By:  danielcottrell at operamail dot com
-Status:   Open
+Status:   Bogus
 Bug Type: Unknown/Other Function
 Operating System: Web Server is running Windows
 PHP Version:  5.2.2RC2
 New Comment:

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.




Previous Comments:


[2007-05-02 13:21:21] danielcottrell at operamail dot com

Description:

If you use javascript to create a textbox in forms which is laid out
using tables, the data from the new elements will not be detected by
php. This does not happen with the same script where tables are not used
(I have before and after to show below).

post_max_size was set to 20M and upload_max_filesize was set to 30M in
php.ini

Reproduce code:
---
---Script A - Tableless --

?

if(isset($_POST['submit']))
{
  foreach($_POST['animals'] as $anim = $a)
  {
echo $anim.' '.$a.'br /';
  }
}

?

!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN
http://www.w3.org/TR/html4/loose.dtd;
html
head
script language=javascript
!--
var curUser=3;

function add_row()
{
  var af=document.getElementById('anim_tab');

  //First Name
  var inone=document.createElement(input);
  inone.name=animals[+curUser+];
  inone.type=text;
  inone.value=;
  //Append the cells to the row
  var myp=document.createElement('p');
  
  af.appendChild(inone);
  af.appendChild(myp);
  curUser++;
}

--
/script

titleUntitled Document/title
meta http-equiv=Content-Type content=text/html;
charset=iso-8859-1
/head

body
form method=post action= id=anim_form

div style=border:0; id=anim_tab
?
  for($i=0;$i3;$i++)
  {
echo input type=\text\ name=\animals[]\
style=\width=400px;\ /p /\n;
  }
?
/div
input type=button name=add value=Add onClick=add_row(); /
input type=submit name=submit value=submit /
/form

/body
/html


--Script B - Tables


?

if(isset($_POST['submit']))
{
  foreach($_POST['animals'] as $anim = $a)
  {
echo $anim.' '.$a.'br /';
  }
}

?

!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN
http://www.w3.org/TR/html4/loose.dtd;
html
head
script language=javascript
!--
var curUser=3;

function add_row()
{
  var af=document.getElementById(anim_tab);

  var lr = af.rows.length;
  
  var row = document.createElement('tr');
  var td1=document.createElement('td');
  
  //First Name
  var inone=document.createElement(input);
  inone.type=text;
  inone.name=animals[+curUser+];
  
  td1.appendChild(inone);
  row.appendChild(td1);
  af.appendChild(row);
  
  curUser++;
}
--
/script

titleUntitled Document/title
meta http-equiv=Content-Type content=text/html;
charset=iso-8859-1
/head

body
table id=anim_tab
form method=post action= id=anim_form

?
  for($i=0;$i3;$i++)
  {
echo trtdinput type=\text\ name=\animals[]\
style=\width=400px;\ //td/tr;
  }
?
/table
input type=button name=add value=Add onClick=add_row(); /
input type=submit name=submit value=submit /
/form

/body
/html

Expected result:

Data from the textboxes created using the add button should be
displayed when submitted.

The table version works when using IE7 but not when using Opera 9.20
and Firefox 2. The tableless version works in all browsers.

Actual result:
--
Only data from the original form elements is displayed not the
javascript created ones.

Could be a browser bug since IE7 delivers the data fine, but why not
standards compliant browers?


Please don't just fob me off by telling me it's already been fixed.





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


#41117 [Asn-WFx]: Altering $this via reference weirdness

2007-05-02 Thread dmitry
 ID:   41117
 Updated by:   [EMAIL PROTECTED]
 Reported By:  hannes dot magnusson at gmail dot com
-Status:   Assigned
+Status:   Wont fix
 Bug Type: Scripting Engine problem
 Operating System: FreeBSD
 PHP Version:  5CVS-2007-04-17 (CVS)
 Assigned To:  dmitry
 New Comment:

The part of the bug that allows use $this as argument name is fixed in
CVS HEAD ans PHP_5_2.

However reassignment $this by reference is still possible and won't be
fixed (at least in php 5.2).

You can use easest code to do this

$obj = $this;
$obj = new stdClass();

Both statements are legal, but their combination makes illegal
assignment that cannot be detected.


Previous Comments:


[2007-04-17 16:35:50] judas dot iscariote at gmail dot com

AFAICS, $this should not be altered(reasigned) in anyway.
this should Fatal error : cannot reassign $this I guess.



[2007-04-17 12:28:26] hannes dot magnusson at gmail dot com

Description:

Using $this as parameter is possible, but when using it (except from
printing it out) $this referes to itself

It is also possible to change $this via reference.
The object name seems to get changed - but when using it it works fine.

Reproduce code:
---
?php
class foo {
function __construct($this) {
printf(ctor \$this parameter is: %s\n,
var_export($this, 1));
self::overwrite($this);

printf(Returning from self::overwrite \$this is: %s,
get_class($this));
$this-hello();
}
function overwrite($obj) {
$obj = new stdclass;
printf(self::overwrite \$this is: %s\n,
get_class($this));
}
function hello() {
printf( ...lier! \$this is still %s\n,
get_class($this));
}
}
$obj = new foo(Hello world);
var_dump($obj);



Actual result:
--
ctor $this parameter is: 'Hello world'
self::overwrite $this is: foo
Returning from self::overwrite $this is: stdClass ...lier! $this is
still foo
object(foo)#1 (0) {
}






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


#41258 [Bgs]: setAttributeNS has inconsistent behaviour when raising exceptions

2007-05-02 Thread daniel dot oconnor at gmail dot com
 ID:  41258
 User updated by: daniel dot oconnor at gmail dot com
 Reported By: daniel dot oconnor at gmail dot com
 Status:  Bogus
 Bug Type:DOM XML related
 PHP Version: 5.2.1
 New Comment:

This is not a functionality bug, but a usability one.

Please see http://clockwerx.blogspot.com/2007/05/bogus-this.html for
more detail - it expands on some of the real world use problems related
to the behavior exhibited here. Take it with a grain of salt, because
I've been fighting this code all day and am more than a little cranky.


Previous Comments:


[2007-05-02 12:54:03] [EMAIL PROTECTED]

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

Line 4 is fine as namespace URI with an associated prefix already
exists (it was created when from line 3). The prefix gets attached to
the attribute. Error messages are not a bug, but feel free to open a
feature request for more verbose messages though.



[2007-05-02 08:55:59] daniel dot oconnor at gmail dot com

Description:

Inconsistent behaviour when raising exceptions. No exception is raised
until line 10

Reproduce code:
---
?php
$d = new DOMDocument();
$example = $d-createElementNS('http://foo.com','example');
$example-setAttributeNS('http://bar.com', 'bar:bar',value);
$example-setAttributeNS('http://bar.com', 'monkey',value);

$d = new DOMDocument();
$example = $d-createElementNS('http://foo.com','example');
$example-setAttributeNS('http://fish.com', 'bar:bar',value);
$example-setAttributeNS('http://bar.com', 'monkey',value);

Expected result:

 1. An exception raised on the second setAttributeNS (line 4)
 2. A more meaningful error than 'Namespace Error' - No namespace
prefix found for http://fish.com

Actual result:
--
An exception on line 10





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


#41250 [Bgs]: Filter SANITIZE_STRING only filters backslash when escaping

2007-05-02 Thread david at emomentum dot co dot uk
 ID:   41250
 User updated by:  david at emomentum dot co dot uk
 Reported By:  david at emomentum dot co dot uk
 Status:   Bogus
 Bug Type: Filter related
 Operating System: Windows XP
 PHP Version:  5CVS-2007-05-01 (snap)
 New Comment:

You don't want to be used a bind/prepared statement for every query
with user submitted data though. Personally, I'd expect the
FILTER_SANITIZE_STRING filter to filter out special characters like \
anyway.


Previous Comments:


[2007-05-02 13:04:20] [EMAIL PROTECTED]

You should use bind/prepared queries for SQL, definitely *not* the
magic quotes filter.



[2007-05-02 12:20:43] [EMAIL PROTECTED]

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

Neither example actually filters backslash. First example doesn't even
see backslash since \' is parsed as one symbol - single quote, escaped
by the backslash. I think if you intend to use it with SQL it's better
to use either FILTER_SANITIZE_MAGIC_QUOTES or encoding filter.



[2007-05-01 09:52:31] david at emomentum dot co dot uk

Description:

The filter FILTER_SANITIZE_STRING only filters out a backslash when it
is escaping something. This means if a backslash is entered into a form
without escaping anything, it will not be filtered and could be executed
into SQL, therefore triggering an escape within the SQL and generating
an error.

Reproduce code:
---
?php
$value = '\'example';
echo filter_var($value, FILTER_SANITIZE_STRING).'br /';

$value = '\example';
echo filter_var($value, FILTER_SANITIZE_STRING).'br /';
?

Expected result:

'example
example

Actual result:
--
'example
\example





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


#41262 [NEW]: Get wrong dirname with pathinfo under Windows

2007-05-02 Thread tim at gerundt dot de
From: tim at gerundt dot de
Operating system: Windows
PHP version:  5.2.1
PHP Bug Type: Filesystem function related
Bug description:  Get wrong dirname with pathinfo under Windows

Description:

If I try to get the dirname from the pathinfo() function under Windows
with a path like /index.php, I get \ instead of / as dirname value.
Under Linux I get the desired value (/).

I tested it with PHP 5.2.1 (Apache 2.2.4, Windows XP) and PHP 4.4.6
(Apache 2.0.54, Windows 2000).

Greetings,
Tim Gerundt

Reproduce code:
---
?php
  $pathinfo = pathinfo('/index.php');
  print_r($pathinfo);
?

Expected result:

Array
(
[dirname] = /
[basename] = index.php
[extension] = php
)

Actual result:
--
Array
(
[dirname] = \
[basename] = index.php
[extension] = php
)

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


#41262 [Opn-Bgs]: Get wrong dirname with pathinfo under Windows

2007-05-02 Thread edink
 ID:   41262
 Updated by:   [EMAIL PROTECTED]
 Reported By:  tim at gerundt dot de
-Status:   Open
+Status:   Bogus
 Bug Type: Filesystem function related
 Operating System: Windows
 PHP Version:  5.2.1
 New Comment:

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php




Previous Comments:


[2007-05-02 19:34:58] tim at gerundt dot de

Description:

If I try to get the dirname from the pathinfo() function under
Windows with a path like /index.php, I get \ instead of / as
dirname value. Under Linux I get the desired value (/).

I tested it with PHP 5.2.1 (Apache 2.2.4, Windows XP) and PHP 4.4.6
(Apache 2.0.54, Windows 2000).

Greetings,
Tim Gerundt

Reproduce code:
---
?php
  $pathinfo = pathinfo('/index.php');
  print_r($pathinfo);
?

Expected result:

Array
(
[dirname] = /
[basename] = index.php
[extension] = php
)

Actual result:
--
Array
(
[dirname] = \
[basename] = index.php
[extension] = php
)





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


#41262 [Bgs-Opn]: Get wrong dirname with pathinfo under Windows

2007-05-02 Thread tim at gerundt dot de
 ID:   41262
 User updated by:  tim at gerundt dot de
 Reported By:  tim at gerundt dot de
-Status:   Bogus
+Status:   Open
 Bug Type: Filesystem function related
 Operating System: Windows
 PHP Version:  5.2.1
 New Comment:

And why is this not a bug? The dirname from (the string) /index.php
is / regardless of I call the function under Windows or Linux. If I
use a path string with a sub directory (like /test/index.php) even
Windows returns the correct dirname (/test). The problem exist only on
Windows when a (unix/web) path includes no sub directories.


Previous Comments:


[2007-05-02 20:54:01] [EMAIL PROTECTED]

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php





[2007-05-02 19:34:58] tim at gerundt dot de

Description:

If I try to get the dirname from the pathinfo() function under
Windows with a path like /index.php, I get \ instead of / as
dirname value. Under Linux I get the desired value (/).

I tested it with PHP 5.2.1 (Apache 2.2.4, Windows XP) and PHP 4.4.6
(Apache 2.0.54, Windows 2000).

Greetings,
Tim Gerundt

Reproduce code:
---
?php
  $pathinfo = pathinfo('/index.php');
  print_r($pathinfo);
?

Expected result:

Array
(
[dirname] = /
[basename] = index.php
[extension] = php
)

Actual result:
--
Array
(
[dirname] = \
[basename] = index.php
[extension] = php
)





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


#41262 [Opn-Bgs]: Get wrong dirname with pathinfo under Windows

2007-05-02 Thread scottmac
 ID:   41262
 Updated by:   [EMAIL PROTECTED]
 Reported By:  tim at gerundt dot de
-Status:   Open
+Status:   Bogus
 Bug Type: Filesystem function related
 Operating System: Windows
 PHP Version:  5.2.1
 New Comment:

It uses the DEFAULT_SLASH constant which on Windows is \\


Previous Comments:


[2007-05-02 22:18:45] tim at gerundt dot de

And why is this not a bug? The dirname from (the string) /index.php
is / regardless of I call the function under Windows or Linux. If I
use a path string with a sub directory (like /test/index.php) even
Windows returns the correct dirname (/test). The problem exist only on
Windows when a (unix/web) path includes no sub directories.



[2007-05-02 20:54:01] [EMAIL PROTECTED]

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php





[2007-05-02 19:34:58] tim at gerundt dot de

Description:

If I try to get the dirname from the pathinfo() function under
Windows with a path like /index.php, I get \ instead of / as
dirname value. Under Linux I get the desired value (/).

I tested it with PHP 5.2.1 (Apache 2.2.4, Windows XP) and PHP 4.4.6
(Apache 2.0.54, Windows 2000).

Greetings,
Tim Gerundt

Reproduce code:
---
?php
  $pathinfo = pathinfo('/index.php');
  print_r($pathinfo);
?

Expected result:

Array
(
[dirname] = /
[basename] = index.php
[extension] = php
)

Actual result:
--
Array
(
[dirname] = \
[basename] = index.php
[extension] = php
)





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


#41263 [NEW]: Engine treating strings as arrays

2007-05-02 Thread tachu at ezboardcorp dot com
From: tachu at ezboardcorp dot com
Operating system: 2.6.20-15-386
PHP version:  5.2.1
PHP Bug Type: Unknown/Other Function
Bug description:  Engine treating strings as arrays

Description:

When accessing a string by character offset php doesnt trigger error when
going out of bounds of the string or accessing a non existing element.

Reproduce code:
---
?php
$moo=asd;
var_dump($moo[444]);
var_dump($moo['cow']);
?



Expected result:

Return false or null since the offset or index is not defined.


Actual result:
--
Notice: Uninitialized string offset:  444 in
/home/tachu/.thunderbird/xs4vamjr.default/moo on line 3
string(0) 
string(1) a


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


#41263 [Opn]: Engine treating strings as arrays

2007-05-02 Thread tachu at ezboardcorp dot com
 ID:   41263
 User updated by:  tachu at ezboardcorp dot com
 Reported By:  tachu at ezboardcorp dot com
 Status:   Open
 Bug Type: Unknown/Other Function
 Operating System: 2.6.20-15-386
 PHP Version:  5.2.1
 New Comment:

Also doing an isset($moo['cow']) returns true.


Previous Comments:


[2007-05-03 00:56:12] tachu at ezboardcorp dot com

Description:

When accessing a string by character offset php doesnt trigger error
when going out of bounds of the string or accessing a non existing
element.

Reproduce code:
---
?php
$moo=asd;
var_dump($moo[444]);
var_dump($moo['cow']);
?



Expected result:

Return false or null since the offset or index is not defined.


Actual result:
--
Notice: Uninitialized string offset:  444 in
/home/tachu/.thunderbird/xs4vamjr.default/moo on line 3
string(0) 
string(1) a






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


#41195 [Opn]: Indexing non-array should raise notice

2007-05-02 Thread lbayuk at pobox dot com
 ID:   41195
 User updated by:  lbayuk at pobox dot com
 Reported By:  lbayuk at pobox dot com
 Status:   Open
 Bug Type: Feature/Change Request
 Operating System: Linux
 PHP Version:  5.2.1
 New Comment:

OK, so we're back at Feature/Change Request. Except on further thought
I like the way it works and would prefer it not change. I just want
clarification of what is supposed to happen when you apply square
brackets to a non-array.

If it is working as intended (silenty returns NULL), please document
it.
If it isn't working as intended, please fix it.


Previous Comments:


[2007-05-02 10:35:40] [EMAIL PROTECTED]

Change requests belong to the Feature/Change Request category.
Reclassified.



[2007-05-01 01:32:05] lbayuk at pobox dot com

Changed category... I thought I put it in as Arrays related, but I
guess I missed and it ended up as Feature/Change Request. To me, this
is either a bug, or a documentation improvement request, not a feature
request.



[2007-04-26 01:38:31] lbayuk at pobox dot com

Description:

If I index a scalar or NULL variable as if it were an array, I get NULL
back with no warning or notice. This is true for any index value,
including 0.  I expected an Undefined offset or incorrect type message. 
The manual says an integer variable = n will convert to array(0=$n);
that works on casting to array but not on indexing.


Reproduce code:
---
?php
error_reporting(E_ALL+E_STRICT);
$arry = array(1=1);
$notarry = NULL;
$intvar = 123;
echo 1. arry[1] =  . $arry[1] . \n;
echo 2. arry[2] =  . $arry[2] . \n;
echo 3. intvar[0] =  . $intvar[0] . \n;
echo 4. intvar[1] =  . $intvar[1] . \n;
echo 5. notarry[1] =  . $notarry[1] . \n;


Expected result:

Notice: Undefined offset (or incorrect type) for (2), (3), (4), and
(5). Or maybe (3) should echo 123 via implicit cast. But only (2)
raises a Notice; the others just echo NULL. 


Actual result:
--
1. arry[1] = 1

Notice: Undefined offset:  2 in /a5/home/ljb/lang/php/p.php on line 7
2. arry[2] = 
3. intvar[0] = 
4. intvar[1] =
5. notarry[1] =






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


#32292 [Com]: XML parser script crashes PHP5ts.dll in Apache 2

2007-05-02 Thread lew_0911 at yahoo dot com
 ID:   32292
 Comment by:   lew_0911 at yahoo dot com
 Reported By:  admin at skynetlabs dot org
 Status:   No Feedback
 Bug Type: XML related
 Operating System: Windows XP (SP2)
 PHP Version:  5.0.4 RC1
 New Comment:

I'm also experiencing this problem. I have xammplite on my system. I
needed to use symfony for my work and so I am studying it, I tried doing
the tutorial provided
(http://www.symfony-project.com/tutorial/my_first_project.html) and
everytime I attempt to create a post, my apache crashes.


Previous Comments:


[2006-02-04 10:06:04] dwivedi dot vibhor at gmail dot com

i am facing following problem

Can't locate API module structure `php5_module' in file
C:/PHP/php5ts.dll:



[2006-02-04 08:26:06] dwivedi dot vibhor at gmail dot com

i just installed apache and php in my windows xp apache is running
nicely when i am not loading php module but when i changed configuration
file as add ing this two lines

LoadModule php5_module c:/PHP/php5ts.dll
AddType application/x-httpd-php .php

but now if i restart the server it is giving error i don't know what t
o do next plese try with php5 and apache latest version.



[2006-02-04 08:22:34] dwivedi dot vibhor at gmail dot com

i just installed apache server and php. i add these 3 lines in config
file.

LoadModule php5_module c:/PHP/php5ts.dll
AddType application/x-httpd-php .php



[2005-11-28 17:47:41] vicoasis at gmail dot com

At me the same mistake when I use plus still MySQL


szAppName : Apache.exe szAppVer : 2.0.55.0 szModName :
php5ts.dll 
szModVer : 5.0.5.5 offset : 7da9 

Any body know to what it is caused :



[2005-06-27 04:00:25] rick dot martinez at gmail dot com

The crash is reproduced on my system. I have the same problem on other
scripts as well. All those scripts use DOM. Here is the Windows error
signature for the error produced by the submitted script:

szAppName : Apache.exe szAppVer : 2.0.54.0 szModName :
php5ts.dll 
szModVer : 5.0.4.4 offset : 7798 

Files created by Windows related to the error are available here:

http://www.digxworld.com/files/phpXmlErrors/Apache.exe.mdmp
http://www.digxworld.com/files/phpXmlErrors/appcompat.txt

If you need any more info, just let me know.
Hope this helps! (especially since this error is really annoying me :P)



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

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


#41264 [NEW]: make install failure

2007-05-02 Thread vagetman at gmail dot com
From: vagetman at gmail dot com
Operating system: Aix 5.3 ML05
PHP version:  5.2.1
PHP Bug Type: Compile Failure
Bug description:  make install failure

Description:

The same problem as with the bug 40268. The 'make install' is broken for
AIX!

Reproduce code:
---
# make install
echo '\
\
Installing PHP SAPI module:   apache2handler
/usr/local/apache/build/instdso.sh
SH_LIBTOOL='/usr/local/apache/build/libtool' libphp5.la
/usr/local/apache/modules
rm -f /usr/local/apache/modules/libphp5.so
/usr/local/apache/build/libtool --mode=install cp libphp5.la
/usr/local/apache/modules/
cp .libs/libphp5.a /usr/local/apache/modules/libphp5.a
cp .libs/libphp5.lai /usr/local/apache/modules/libphp5.la
libtool: install: warning: remember to run `libtool --finish
/install/Toolbox/php-5.2.1/libs'
chmod 755 /usr/local/apache/modules/libphp5.so
chmod: /usr/local/apache/modules/libphp5.so: A file or directory in the
path name does not exist.
apxs:Error: Command failed with rc=65536
.
make: 1254-004 The error code from the last command is 1.


Stop.
#

Actual result:
--
Anther way.

# make -n install-sapi
echo Installing PHP SAPI module:   apache2handler
/install/Toolbox/php-5.2.1/build/shtool mkdir -p
/usr/local/apache/php/bin
if test ! -r /install/Toolbox/php-5.2.1/libs/libphp5.so; then  for
i in 0.0.0 0.0 0; do  if test -r
/install/Toolbox/php-5.2.1/libs/libphp5.so.$i; then  ln -s
/install/Toolbox/php-5.2.1/libs/libphp5.so.$i
/install/Toolbox/php-5.2.1/libs/libphp5.so;  break;  fi;  done;  fi
/install/Toolbox/php-5.2.1/build/shtool mkdir -p
'/usr/local/apache/modules'  /install/Toolbox/php-5.2.1/build/shtool
mkdir -p '/usr/local/apache/conf'  /usr/local/apache/bin/apxs -S
LIBEXECDIR='/usr/local/apache/modules' -S
SYSCONFDIR='/usr/local/apache/conf' -i -a -n php5 libphp5.la
# /local/apache/conf' -i -a -n php5 libphp5.la
  
/usr/local/apache/build/instdso.sh
SH_LIBTOOL='/usr/local/apache/build/libtool' libphp5.la
/usr/local/apache/modules
rm -f /usr/local/apache/modules/libphp5.so
/usr/local/apache/build/libtool --mode=install cp libphp5.la
/usr/local/apache/modules/
cp .libs/libphp5.a /usr/local/apache/modules/libphp5.a
cp .libs/libphp5.lai /usr/local/apache/modules/libphp5.la
libtool: install: warning: remember to run `libtool --finish
/install/Toolbox/php-5.2.1/libs'
chmod 755 /usr/local/apache/modules/libphp5.so
chmod: /usr/local/apache/modules/libphp5.so: A file or directory in the
path name does not exist.
apxs:Error: Command failed with rc=65536
.
#

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


#41265 [NEW]: spurious error about missing iconv

2007-05-02 Thread paul at ensigma dot com dot au
From: paul at ensigma dot com dot au
Operating system: Linux - Slackware 11.0
PHP version:  5.2.1
PHP Bug Type: Compile Failure
Bug description:  spurious error about missing iconv

Description:

./configure reports missing iconv when in fact ttf is missing

Configuration line was:

./configure --with-mysql --with-gd --with-ttf --enable-track-vars 
--with-apxs2=/usr/local/apache2/bin/apxs --with-jpeg  --with-png
--with-zlib --with-tiff --with-gdbm --with-pdflib=/usr/local
--with-freetype  --enable-mbstring

failed to compile complaining about iconv install but iconv is correctly
installed.

Reproduce code:
---
Run above configuration line with no libttf

Expected result:

Successful compile

Actual result:
--
checking for iconv support... yes
checking for iconv... no
checking for libiconv... no
checking for libiconv in -liconv... no
checking for iconv in -liconv... no
configure: error: Please reinstall the iconv library.


Config.log shows the issue:

int main() {
libiconv()
; return 0; }
configure:44525: checking for iconv in -liconv
configure:44544: gcc -o conftest -g -O2  -Wl,-rpath,/usr/local/lib
-L/usr/local/lib  conftest.c -liconv  -lttf -lpng -lz -lgdbm -lz -lresolv
-lm -ldl -lnsl  -lxml2 -lz -lm -lxml2 -lz -lm 15
/usr/lib/gcc/i486-slackware-linux/3.4.6/../../../../i486-slackware-linux/bin/ld:
cannot find -lttf
collect2: ld returned 1 exit status
configure: failed program was:
#line 44533 configure
#include confdefs.h
/* Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply.  */
char iconv();

int main() {
iconv()
; return 0; }

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


#41266 [NEW]: pspell_new_config() fails to locate dictionary

2007-05-02 Thread mauron at maurtopia dot com
From: mauron at maurtopia dot com
Operating system: Windows
PHP version:  4.4.6
PHP Bug Type: Pspell related
Bug description:  pspell_new_config() fails to locate dictionary

Description:

When attempting to create a dictionary with pspell_new_config(), an error
is returned.

This is not an issue with with the pspell installation; both pspell_new()
and pspell_new_personal() work as expected.

Reproduce code:
---
$pspell_config = pspell_config_create(en);
$pspell_link = pspell_new_config($pspell_config);

Expected result:

A new pspell link is created.

Actual result:
--
Warning: PSPELL couldn't open the dictionary. reason: No word lists can be
found for the language en_US.

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