https://bugzilla.wikimedia.org/show_bug.cgi?id=56226
--- Comment #8 from Bawolff (Brian Wolff) <[email protected]> --- (In reply to comment #7) > (In reply to comment #4) > > Ok, problem is: > > > > if you call clone during parsing, its a shallow clone, so > > $this->mPreprocessor->parser points to the wrong instance of parser, so the > > strip item uniq prefix that gets used is wrong. > > Hmm, I think I jumped to a conclusion a little to fast. (The patch I tried > did > something wrong which coincidentally made my test case work). > > What I now think is happening - It appears that replacing the mStripState > variable causes it to be replaced on both instances of the parser instead of > just the current instance (As if it was a reference to a reference, and you > were replacing the wrong layer of indirection) I have no idea how or why, but updated patch which stops issue occurring by doing something that really should have no affect whatsoever. Specificly it does: $foo = new StripState( $stuff ); $this->mStripState =& $foo; as opposed to straight assigning StripState to foo. What the difference is, I honestly have no idea. Seems like some sort of nasty php bug related to cloning object. -- You are receiving this mail because: You are the assignee for the bug. You are on the CC list for the bug. _______________________________________________ Wikibugs-l mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikibugs-l
