Hi all,
I've just upgraded my server to PHP 5.2.1, and roundcube stopped working
, here is what I get every time I access the directory root:
[15-Feb-2007 14:10:03] PHP Warning: preg_split() [<a
href='function.preg-split'>function.preg-split</a>]: Compilation failed:
lookbehind assertion is not fixed length at offset 7 in
/usr/local/www/roundcube/program/lib/DB/common.php on line 751
[15-Feb-2007 14:10:03] PHP Warning: Invalid argument supplied for
foreach() in /usr/local/www/roundcube/program/lib/DB/common.php on line 756
[15-Feb-2007 14:10:03 +0400] DB Error: DB Error: mismatch Query: [DB
Error: mismatch] in
/usr/local/www/roundcube/program/include/rcube_db.inc on line 501
[15-Feb-2007 14:10:03] PHP Fatal error: Call to a member function
fetchRow() on a non-object in
/usr/local/www/roundcube/program/include/rcube_db.inc on line 368
Looking at /usr/local/www/roundcube/program/lib/DB/common.php:751 seems
this preg_split is causing the error:
function prepare($query)
{
$tokens = preg_split('/((?<!\\\)[&?!])/', $query, -1,
PREG_SPLIT_DELIM_CAPTURE);
[snip]
Everything worked with PHP 5.2.0... So either something wrong with
5.2.1, or that regexp is invalid... Googling around found this related
bug: http://bugs.php.net/bug.php?id=38327&edit=1
Any ideas?
Vahan