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








Reply via email to