[dokuwiki] This pattern matching seems to stop working in PHP 8

  • From: Chris Green <cl@xxxxxxxx>
  • To: dokuwiki@xxxxxxxxxxxxx
  • Date: Thu, 4 Nov 2021 17:46:07 +0000

I have a plugin called 'xv' (written by me for use by me only, it's a
catchall for all sorts of odds and ends), it has the following snippet
of code in its syntax.php:-

    /** 
     * Connect pattern to lexer 
     */
    function connectTo($mode)
    {
        $this->Lexer->addEntryPattern('<xv>(?=.*</xv>)',$mode,'plugin_xv');
    }

This works in Hogfather and PHP7 but it's failing to match the trailing
</xv> in the latest dokuwiki from github and using PHP8.

Has the pattern matching somehow been changed, either in the latest
Dokuwiki code or in PHP8?

For what it's worth the above is extracting the following multi-line
string:-

    dscr=Various bits of information, links, etc.</xv>
      
        * [[access]] - Bridleways, access to forestry land, general "where to 
ride" information
        * [[equipment]] - Equipment for our "long distance" ride.
        * [[poland]] - Some links that Marek sent me about places to ride in 
Poland

so, for some reason, it's missing the </xv> at the end of that
first line.
  
  

-- 
Chris Green
·

-- 
DokuWiki mailing list - more info at
http://www.dokuwiki.org/mailinglist

Other related posts: