ID:               48959
 Updated by:       paj...@php.net
 Reported By:      trutas dot ctx at gmail dot com
-Status:           Assigned
+Status:           Feedback
 Bug Type:         Filesystem function related
 Operating System: win32 - Windows Server 2003 x64
 PHP Version:      5.3.0
 Assigned To:      pajoye
 New Comment:

I have no idea what DOMPDF_XXXX is and how it is used.

Please provide a standalone script I can use to reproduce your problem,
as well as which paths are used by the script.

"- Please note that this problem does not happen in local folder to the
 execution base (eg. "tmp_sub_folder/" ) - this only happens in the 
system tmp folder in this setup."

It looks like a permission problem to me.



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

[2009-07-17 16:09:18] trutas dot ctx at gmail dot com

The environment could be the problem here,
 
I'm using Windows 2003 x64 with PHP x64 via fastcgi.

These are two IIS Servers with load balancer and a separate cluster 
that serves the actual run files.
PHP is installed on D:\PHP on each IIS machine.

The problem came up using the library dompdf - it saves document 
images content to temporary files in order to build the final pdf 
document.

I've reduced the problem to the test code i've attached. 
DOMPDF_TEMP_DIR is /tmp and writes to C:\Windows\tmp ...

- Please note that this problem does not happen in local folder to the

execution base (eg. "tmp_sub_folder/" ) - this only happens in the 
system tmp folder in this setup.

This is the same setup environment as the one reported in the bug 
48852 (about file_put_contents)



Regards,

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

[2009-07-17 15:34:47] paj...@php.net

Cannot reproduce on 2k8, vista and win7. Pls note that I replaced the
my_file_... with the normal file_get_contents function.

Can you paste a working script pls?

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

[2009-07-17 15:08:28] trutas dot ctx at gmail dot com

Just tested - file_exists() returns false incorrectly too.

I´ve worked around it all with checking for fopen($file, 'r') and
forcing file_get_contents() - it works, file exists, is readable and
returns the content.

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

[2009-07-17 12:10:10] trutas dot ctx at gmail dot com

Description:
------------
is_readable() returns false for temporary file (just created)
"C:\WINDOWS\Temp\dom373.tmp" and filezise() fails too.

fopen() and get_file_contents() both work for the same file.

as a workaround i'm using fopen() instead of is_readable() and 
fseek($fopen_instance, 0, SEEK_END); instead of filesize()

Reproduce code:
---------------
//temporary location
$resolved_url = tempnam(DOMPDF_TEMP_DIR, "dompdf_img_");
//get source
$image=my_file_get_contents("http://9tree.net/favicon.ico";);
//save it
file_put_contents($resolved_url, $image);

//tests
if(is_readable($resolved_url)) print "file readable, ";
if(filesize($resolved_url)) print "filezise found.\n";

die("all done.");

Expected result:
----------------
file readable, filezise found.
all done.

Actual result:
--------------
all done.


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


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

Reply via email to