ID:               35060
 User updated by:  moron at industrial dot org
 Reported By:      moron at industrial dot org
 Status:           Open
 Bug Type:         Documentation problem
 Operating System: FreeBSD (likely all)
 PHP Version:      4.4.1RC1
 New Comment:

Ok.  As an aside though, they have been "wrong" for at least two or
three years now and I have been using the stated functionality in both
PHP 4 and 5 successfully for quite a while so changing this behaviour
will affect any application that uses the GD functions under
"safe_mode".  

It's also a bit illogical to have to create the file first, no?  

Again, if "touch" and "copy" and "move_uploaded_file" and "unlink" all
can have access to the file in question (as they should in this
scenario), why can't "imagejpeg" do the same "safe_mode" access checks
(as it seems to be attempting to do when looking at the source)?  The
file it wants to create is within the open_basedir limits, it is under
a directory with world write permissions and it is owned by the same
group as the script running.

Cheers


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

[2005-11-02 14:19:01] [EMAIL PROTECTED]

Docs are wrong.

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

[2005-11-01 23:00:10] moron at industrial dot org

http://ca.php.net/manual/en/function.imagejpeg.php

"imagejpeg() creates the JPEG file in filename from the image image.
The image argument is the return from the imagecreatetruecolor()
function."

This definition conflicts with the newly stated requirement that the
file in question already exists.  Either the docs are wrong or the
safe_mode check is broken.

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

[2005-11-01 22:57:10] moron at industrial dot org

What is bogus about the bug exactly? If "touch()" can create the file
then so should imagejpeg() - is that not the entire point of that
function, to create a file?  Nothing in the docus that I could see
state that the file needs to exist previously. 

Also, if this is a "feature" can you please explain what that feature
is exactly?  It does not seem to adhere to any sane permission scheme I
can think of, at least as far as running PHP as a module under UNIX
style operating systems go.

If this "feature" will not be going away, any chance of getting the
imagejpeg docs updated to note that the new requirement is that the
file in question already exists before it can be written to?

Cheers

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

[2005-11-01 22:51:14] [EMAIL PROTECTED]

and in PHP 5.1 there are even MORE of these checks! =)
(hint: this is not a bug but a feature)



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

[2005-11-01 22:39:24] jerome at blion dot dyndns dot org

touch('files/thingy/test.jpg');
before imagejpeg worked for me

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

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

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

Reply via email to