Looks good except for:
if (realpath(path, resolved_path) && use_realpath) {
which I think should be:
if (use_realpath && realpath(path, resolved_path))
Thanks,
Andi
At 06:49 PM 11/4/2002 -0500, Ilia A. wrote:
I've taken you suggestion about adding an additional parameter to
file_ex() to
address the symlink situation. Attached is a patch that I believe should
resolve the problem.
Ilia
On November 4, 2002 02:53 pm, Ilia A. wrote:
> On November 4, 2002 03:43 am, Andi Gutmans wrote:
> > At 02:41 PM 11/4/2002 -0500, Ilia A. wrote:
> > >On November 4, 2002 03:36 am, you wrote:
> > > > I'll check it out tomorrow. Your code is problematic in any case as
> > > > you're returning a pointer to the stack which is a no-no in C.
> > > > I'll see if there's a way to do what you need without adding this
> > > > virtual_link function. Can you revert it in the meantime?
> > >
> > >Quite correct, not sure why I missed that and the compiler did not catch
> > >that.
> > >I'll revert the patch momentarily.
> >
> > OK thanks. Will an extra argument to file_ex() telling it not to run
> > realpath() solve your problem? We need realpath() everywhere else but I
> > think it'll be OK for unlink() only.
>
> Actually we need it several other places, originally I've added this code
> due to a bug in symlink/link implementation. The following functions would
> need not to resolve symlinks:
> virtual_rename(), virtual_lstat(), virtual_rmdir(), virtual_unlink(),
> virtual_chown().
>
> Possibly others.
>
> The extra argument for file_ex would solve the problem, however given the
> fact this may be a common function, it may be a good idea to keep it
> seperate.
>
> Ilia
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php