https://bugzilla.wikimedia.org/show_bug.cgi?id=41689

Erik Bernhardson <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #7 from Erik Bernhardson <[email protected]> ---
Dug through this today, the problem is actually only tangentially related to
windows.

Basically the most likely thing on windows is the gnu diff is not installed. 
MediaWiki contains Diff and UnifiedDiffFormatter classes to perform the diff in
pure php.  The output of UnifiedDiffFormatter does not match the output of gnu
diff on my linux box, specifically:

GNU diffutils 3.2:

@@ -1,4 +1,4 @@
 line 1
-line 2
+line b
 line 3
 line 4



MediaWiki Internal Diff:

@@ -1,4 +1,4 @@
  line 1
- line 2
+ line b
  line 3
  line 4


I see two possible solutions, but not sure which is more appropriate:

1) Update UnifiedDiffFormatter to match the output of GNU diffutils 3.2.  I
worry that wfDiff() which calls the formatter is used in a variety of places,
could break other things

Really option 1 seems like the only appropriate solution, but if we dont want
to change UnifiedDiffFormatter we can:

2) apply some heuristics to assume that if the second character of every line
is a space, that it came from UnifiedDiffFormatter in which case we would strip
that line out before processing further.  Thats a horrible hack

I can code up either solution, but need some guidence on which is appropriate

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to