[pmwiki-users] My wiki, she is kaput

David Spitzley dspitzle at wash.k12.mi.us
Thu Feb 7 13:48:36 CST 2008

>>> "David Spitzley" <dspitzle at wash.k12.mi.us> 1/15/2008 1:42 PM >>>
If I insert the print statement anywhere within that loop (aside from within if statements that evaluate as false), it prints the alert and halts as expected.  If I insert the print statement after the loop, the page hangs.  My first thought was that the hang might be a failure to terminate the foreach loop, so here's the print_r() dump of $InterMapFiles:

Array ( [0] => D:\wwwsites\davidaspitzleyorg\www\Test/scripts/intermap.txt [1] => D:\wwwsites\davidaspitzleyorg\www\Test/local/farmmap.txt [2] => $SiteGroup.InterMap [3] => local/localmap.txt )

Here's some further information:  by making the print statement conditional, I have determined that the loop is able to iterate through [0] and [1], but never makes it to [2], so the non-existence of farmmap.txt may be at fault.

I've investigated this further, and I think I've figured out what is crashing, but not why.  The file "D:\wwwsites\davidaspitzleyorg\www\Test/local/farmmap.txt" does not exist, which shouldn't present a problem in theory, as the function PageExists($pagename) should take care of that.  However, PageExists calls the PageStore->exists method, and when that tries to evaluate file_exists($pagename) for a non-existent file, it fails to return a false, hanging the script.  So, does anybody know anything about file_exists() failing under FastCGI?

For what it's worth, figuring out what's bombing has solved my immediate problem, as I have no need for the non-existent Intermap files to be searched, so I can simply remove them from $InterMapFiles.  Unfortunately, since SDV isn't used in setting that variable, I imagine I'll need to actually modify pmwiki.php, rather than config.php.


More information about the pmwiki-users mailing list