[PATCH 3 of 4 censor RFC] mdiff: add helper for making deltas which replace the full text of a revision
Augie Fackler
raf at durin42.com
Tue Feb 10 13:15:47 CST 2015
On Thu, Feb 05, 2015 at 10:57:49PM -0500, Mike Edgar wrote:
> # HG changeset patch
> # User Mike Edgar <adgar at google.com>
> # Date 1421876109 18000
> # Wed Jan 21 16:35:09 2015 -0500
> # Node ID 95ed0ff48518b8390eb084e8efb9e647516a0b8d
> # Parent 75e6aa3db49612a96fe768e16fd17c22f0a21ce9
> mdiff: add helper for making deltas which replace the full text of a revision
>
> This helper will be used initially for censor-aware delta generation. Deltas
> which replace the full contents of the base revision are guaranteed to apply
> correctly regardless of whether the delta recipient has censored the base.
>
> For background and broader design of the censorship feature, see:
> http://mercurial.selenic.com/wiki/CensorPlan
>
> diff -r 75e6aa3db496 -r 95ed0ff48518 mercurial/mdiff.py
> --- a/mercurial/mdiff.py Fri Jan 23 17:01:39 2015 -0500
> +++ b/mercurial/mdiff.py Wed Jan 21 16:35:09 2015 -0500
> @@ -367,6 +367,9 @@
> def trivialdiffheader(length):
> return struct.pack(">lll", 0, 0, length)
>
> +def replacediffheader(old, new):
> + return struct.pack(">lll", 0, old, new)
it wasn't immediately obvious to me that old and new are
lengths. Maybe oldlen and newlen?
> +
> patches = mpatch.patches
> patchedsize = mpatch.patchedsize
> textdiff = bdiff.bdiff
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at selenic.com
> http://selenic.com/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list