From:             mahesh dot vemula at in dot ibm dot com
Operating system: RHEL4
PHP version:      5CVS-2007-07-26 (CVS)
PHP Bug Type:     Scripting Engine problem
Bug description:  copy() does unexpected creation of file for dir as src & 
returns FALSE as expec

Description:
------------
While trying to create a copy of an existing dir by copy() function, it
creates a file which is not expected but returns FALSE as expected. Even
for an existing file as second argument, PHP doesn’t throw any warning
message. It happens against Linux, and works fine against Windows.

Reproduce code:
---------------
<?php
mkdir("copy");
mkdir("copy1");
fclose( fopen("copy.tmp", "w") );

var_dump( copy("copy", "copy1") );  //copying dir to existing dir, throws
a Warning msg as expected
var_dump( copy("copy.tmp", "copy") );  //copying file to a dir, throws a
warning msg as expected

var_dump( copy("copy", "copy_copy") );  //copying dir to non-existing
dest, copy returns FALSE but creates a file & no warning msg
var_dump( copy("copy", "copy_dir.tmp") );  //copying dir to non-existing
file, copy returns FALSE but creates a file & no warning msg
var_dump( copy("copy", "copy.tmp") );  //copying dir to an existing file,
copy returns FALSE but no warning msg

unlink("copy_copy");
unlink("copy_dir.tmp");
unlink("copy.tmp");
rmdir("copy1");
rmdir("copy");
?>


Expected result:
----------------
Creation of file is not expected and a required warning messages are
expected.

Actual result:
--------------
Warning: copy(copy1): failed to open stream: Is a directory in %s on line
%d
bool(false)

Warning: copy(copy): failed to open stream: Is a directory in %s on line
%d
bool(false)
bool(false)
bool(false)
bool(false)


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

Reply via email to