Anonymous | Login | Signup for a new account | 12-17-2024 10:52 PST |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Advanced Details [ Jump to Notes ] | [ View Simple ] [ 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 | Platform | |||||
Status | closed | OS | |||||||
Projection | none | OS Version | |||||||
ETA | none | Fixed in Version | 3.1.3 | Product Version | 3.1.2 | ||||
Product Build | |||||||||
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. |
||||||||
Steps To Reproduce | |||||||||
Additional Information | |||||||||
Attached Files | |||||||||
|
Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
40 total queries executed. 31 unique queries executed. |