RE: [SMARTY-DEV] improper check for existance of a file when including PHP files
| From: | Monte Ohrt | Date: | Mon, 16 Dec 2002 14:38:25 +0000 |
| Subject: | RE: [SMARTY-DEV] improper check for existance of a file when including PHP files | ||
| References: | 1 | Groups: | php.smarty.dev |
| Request: | Send a blank email to php-smarty-dev+get-419@lists.php.net to get a copy of this message | ||
It has been there for a few days.
On Mon, 2002-12-16 at 04:48, Yuri Weseman wrote:
> Hi,
>
> Lee Coltrane is right, so please commit that change :-) (haven't seen a
> change in the CVS yet)
>
> Thanx,
>
> Yuri Weseman
>
> -----Original Message-----
> From: Monte Ohrt [mailto:monte@ispi.net]
> Sent: Wednesday, December 11, 2002 9:23 PM
> To: Lee Coltrane
> Cc: Yuri Weseman; smarty-dev@lists.php.net
> Subject: RE: [SMARTY-DEV] improper check for existance of a file when
> including PHP files
>
>
> If that's the case then your patch should be fine. I'll get that
> committed.
>
> On Wed, 2002-12-11 at 14:10, Lee Coltrane wrote:
> > The documentation on clearstatcache() seems to address this.
> >
> > It is the documentation for this function (see link to php docs below)
> that
> > leads me to make my previous assertion:
> >
> > http://www.php.net/manual/en/function.clearstatcache.php
> >
> >
> >
> > > -----Original Message-----
> > > From: Monte Ohrt [mailto:monte@ispi.net]
> > > Sent: Wednesday, December 11, 2002 2:11 PM
> > > To: Lee Coltrane
> > > Cc: Yuri Weseman; smarty-dev@lists.php.net
> > > Subject: RE: [SMARTY-DEV] improper check for existance of a file when
> > > incl uding PHP files
> > >
> > >
> > > Are you sure? That would cause some real headaches, especially if a
> > > files state changes between stats. I don't think PHP attempts any
> > > caching.
> > >
> > > On Wed, 2002-12-11 at 12:09, Lee Coltrane wrote:
> > > > I think that php caches file stats, so, I believe that
> > > doing a file_exists
> > > > followed immediately by an is_file is not actually as
> > > time-consuming as it
> > > > seems like it would be.
> > > >
> > > > ...I could be wrong, however.
> > > >
> > > > Anyway, it's a personal preference, but I feel like the '@'
> > > operator is kind
> > > > of a kludge regardless of how/when it is used. Of course,
> > > given the chance,
> > > > I would have made is_file return false when the file
> > > doesn't exist, rather
> > > > than triggering a warning, but we have no control over that
> > > one. :-)
> > > >
> > > > IMHO, of course.
> > > > -Lee
> > > >
> > > > > -----Original Message-----
> > > > > From: Monte Ohrt [mailto:monte@ispi.net]
> > > > > Sent: Wednesday, December 11, 2002 12:35 PM
> > > > > To: Yuri Weseman
> > > > > Cc: smarty-dev@lists.php.net
> > > > > Subject: Re: [SMARTY-DEV] improper check for existance of
> > > a file when
> > > > > including PHP files
> > > > >
> > > > >
> > > > > This method takes two file stats to perform the same
> > > operation instead
> > > > > of one. That is why one was used with an "@" to suppress it.
> > > > >
> > > > > I believe there is a way to tell if an error was suppressed
> > > > > with an "@"
> > > > > or not, you should consider that in your error handler.
> > > > >
> > > > > Monte
> > > > >
> > > > > On Wed, 2002-12-11 at 04:19, Yuri Weseman wrote:
> > > > > > Hi everyone,
> > > > > >
> > > > > > Recently we installed a custom error handler for PHP, that
> > > > > shows a nifty
> > > > > > error screen when critical errors occur in PHP scripts.
> > > > > Also, the script
> > > > > > sends mails when not so critical errors have occurred. Now
> > > > > I've noticed that
> > > > > > Smarty generates an error in line 866 of Smarty.class.php
> > > > > (version 2.3.0).
> > > > > > In get_php_resource a check is done to see if the resource
> > > > > exists by using
> > > > > > is_file. To suppress any errors an @ sign is placed in
> > > > > front of it. But
> > > > > > still this does trigger our error handler and thus
> > > generates mails.
> > > > > >
> > > > > > A more clean approach would be to use file_exists first.
> > > > > >
> > > > > > Line 866 is now:
> > > > > > if (is_file($resource_name)) {
> > > > > >
> > > > > > I suggest it will be:
> > > > > > if (file_exists($resource_name) && is_file($resource_name)) {
> > > > > >
> > > > > > Included is a diff file so that Smarty can be patched.
> > > > > >
> > > > > > Greetings,
> > > > > >
> > > > > > Yuri Weseman
> > > > > >
> > > > > >
> > > > >
> > > ______________________________________________________________________
> > > > > >
> > > > > > --
> > > > > > Smarty Development Mailing List (http://smarty.php.net/)
> > > > > > To unsubscribe, visit:
> > > > > > http://www.php.net/unsub.php
> > > > > --
> > > > > Monte Ohrt <monte@ispi.net>
> > > > >
> > > > >
> > > > > --
> > > > > Smarty Development Mailing List (http://smarty.php.net/)
> > > > > To unsubscribe, visit:
> > > > > http://www.php.net/unsub.php
> > > > >
> > > --
> > > Monte Ohrt <monte@ispi.net>
> > >
> --
> Monte Ohrt <monte@ispi.net>
>
>
> --
> Smarty Development Mailing List (http://smarty.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
--
Monte Ohrt <monte@ispi.net>