ID:               42280
 User updated by:  chris at dented-planet dot net
 Reported By:      chris at dented-planet dot net
-Status:           Open
+Status:           Bogus
 Bug Type:         *General Issues
 Operating System: Mac OS X 10.4.10
 PHP Version:      5.2.4RC1
 New Comment:

There is no bug here. Only someone who doesn't completely understand
how to compile source code.

I was reusing the same source download over and over switching between
--enable-debug and --disable-debug. While I rm'd config.cache, I didn't
remove other generated files in the source directory. I assumed they'd
be overwritten.

Once I downloaded a virgin source code for 5.2.3, the "bug" no longer
occurred.

Sorry!

That being said, can you suggest a good book on learning and compiling
C? I think it's about time I learn a bit more so this doesn't happen
again.


Previous Comments:
------------------------------------------------------------------------

[2007-08-12 22:45:49] chris at dented-planet dot net

I compiled each version myself from source downloaded from php.net

I used the --disable-debug config setting and phpinfo() says "Debug
Build No"

------------------------------------------------------------------------

[2007-08-12 22:16:38] [EMAIL PROTECTED]

Are you absolutely sure you do NOT have a debug build? (check from
phpinfo() output..) I can't see any way in sources for the error to be
'5' if you really aren't using a debug build. It's only possible if you
have patched the sources..

------------------------------------------------------------------------

[2007-08-12 21:30:06] chris at dented-planet dot net

Description:
------------
I don't know if this is considered a bug there there has been a change
in behavior in the File Upload handling when uploading a zero-length
file.

The change happened after PHP 5.2.2 and is in 5.2.4RC1 as well.

Note: I am not using a debug build.


Reproduce code:
---------------
Use this code to upload a zero-length file (I used Firefox 1.5.x):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en-US">
<head></head>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>"
enctype="multipart/form-data">
<input type="file" name="upload_file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>
<br />
<pre>
<?php
var_dump($_FILES);
?>
</pre>
</body>
</html>


Expected result:
----------------
In PHP 5.2.2, the output of var_dump($_FILES) is:

array(1) {
  ["upload_file"]=>
  array(5) {
    ["name"]=>
    string(9) "empty.txt"
    ["type"]=>
    string(10) "text/plain"
    ["tmp_name"]=>
    string(18) "/var/tmp/phpLAvnSB"
    ["error"]=>
    int(0)
    ["size"]=>
    int(0)
  }
}

In PHP 5.2.3 and later it is:

array(1) {
  ["upload_file"]=>
  array(5) {
    ["name"]=>
    string(9) "empty.txt"
    ["type"]=>
    string(0) ""
    ["tmp_name"]=>
    string(0) ""
    ["error"]=>
    int(5)
    ["size"]=>
    int(0)
  }
}

Especially, notice the change in "error".



------------------------------------------------------------------------


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

Reply via email to