[isf-wifidog] Warning about SVN trunk lifted
bock at step.polymtl.ca
Lun 27 Nov 16:39:25 EST 2006
On Monday 27 November 2006 14:15, Adam Ford wrote:
> Heya Chaps,
> Fantastic job on wifidog by the way - works wonders! :o)
> ... until now of course! - I stupidly to the latest release of php
> 5.2.0 (didn't realise at the time, latest version in freebsd ports
> took me to it) - and it seems wifidog doesn't work with this version
> There's a new DateTime routine in php 5.2.0 which conflicts with an
> existing routine in wifidog, and some other private construct call
> problems which I don't really understand right now.. :o)
> I assume you guys don't know about this (or I'm doing something
> incredibly wrong, since there's no mention on the website about
> requiring an older version of php...
Yes, that's http://dev.wifidog.org/ticket/270. A sad little piece of the PHP
language design "process".
As for requiring an "older" version, older is relative, PHP 5.2 was released
25 days ago, and I didn't want to attempt this surgery untill I had a PHP 5.2
test bed, or a very available tester giving detailled bug reports. You just
volunteered for that assignment ;)
> I managed to rename the DateTime() routine ok temporarily, but am
> stuck on how to fix the next error;
> PHP Fatal error: Cannot call private Content::__construct() in /usr/
> Langstring.php on line 71
> help!? :o) - Its possible i inadvertently caused this error while
> temporary-fixing the first!
Much as i'd like to blame the PHP guys, it seems that PHP 5.2 actually fixed a
class access control bug. The error was in our code: the Content class
contructor shouldn't be private, it should be protected. But previous
versions of PHP allowed it, probably because we use an object factory and PHP
previously considered the scope of the construct call to be the one of the
parent class static method for the whole call tree, which is arguably wrong.
I fixed both problems in SVN, but didn't test on 5.2. Please svn update and
tell me if it works now.
Plus d'informations sur la liste de diffusion WiFiDog