[pmwiki-users] preg_replace issue for php 5.6

Jean-Pierre Chrétien jeanpierre.chretien at free.fr
Sat Jul 25 07:23:20 CDT 2015


My provider will not support php version < 5.5 since sept 24, 2015, so I
went into the process of upgrading towards php 5.6.

Here are the steps I took

1/ Upgrade to the latest pmwiki version (2.2.78)

2/ Turn on php 5.6 on the provider server

3/ I get preg_replace errors on line 1676 of pmwiki.php. As indicated in the
troubleshooting page, I call the page with ruleset action, which points to
\e mofifiers in the bonny skin (two occurences) and the flowplayer module
(1 occurrence)

4/ I turn Markup into Markup_e and change $x for $m[x] in the indicated
lines, the errors disappear

5/ When I runn the homepage with action=edit, a set of preg_replace errors
appear again, while no ruleset errors are detected. So I enter the procedure
of deactivating all modules I use, namely bonny skin, captcha, mini, pmform,
convert-html and flowplayer

6/ the preg_replace error is still here, so I run

# find . -name '*.php' -exec grep '\/e' {} \; -ls

in a shell window, which detects one /e modifier undetected by ruleset in
pmform (which is deactivated in the config file) which I edit for the sake
of completeness;

So here I am : I followed the troubleshooting procedure and I'm still
 stuck with a preg_replace error in edit mode.

What should I do ?
Reinstall 2.2.78 from scratch and add my pub, local and wiki.d directories
item by item ?

Or, knowing that the preg_replace() function is only called conditionally in
lines 493 and 1676 of pmwiki.php, is it safe to simply mask the error ?

Thanks for your answer

More information about the pmwiki-users mailing list