Anonymous | Login | Signup for a new account | 12-17-2024 08:28 PST |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ View Advanced ] [ Issue History ] [ Print ] | ||||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | ||||
0001935 | [Quercus] | major | always | 08-10-07 15:51 | 09-07-07 00:55 | ||||
Reporter | rjc | View Status | public | ||||||
Assigned To | nam | ||||||||
Priority | normal | Resolution | fixed | ||||||
Status | closed | Product Version | 3.1.2 | ||||||
Summary | 0001935: Backreferences in regexps broken in Quercus/Resin 3.1.2 | ||||||||
Description |
MediaWiki allows you to edit a particular section of wikitext (instead of the whole document), by section. Sections are delimited by syntax like: == Section 1 == foo bar === Subsection 1.2 === baz When invoking index.php?action=edit§ion=1, MediaWiki invokes the function extractSections() in Parser.php. The regular expression used to extract sections in this function fails in Resin 3.1.2, but works fine in Resin 3.1.1. Here is the Regexp: $secs = preg_split( "/ ( ^ (?:$comment|<\/?noinclude>)* # Initial comments will be stripped (=+) # Should this be limited to 6? .+? # Section title... \\2 # Ending = count must match start (?:$comment|<\/?noinclude>|[ \\t]+)* # Trailing whitespace ok $ | <h([1-6])\b.*?> .*? <\/h\\3\s*> ) /mix", $striptext, -1, PREG_SPLIT_DELIM_CAPTURE); I have narrowed it down to the following simpler case: $striptext = "=== foo ===\nfoo\n=== bar ===\nbar\n"; $secs = preg_split( "/^(=+)[^=]+?\\1/mix", $striptext, -1); This fails as well. |
||||||||
Additional Information | |||||||||
Attached Files | |||||||||
|
Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
40 total queries executed. 31 unique queries executed. |