Fixing a bug in diff where a deletion inside a conflict was trying to find a byte offset just past the end of a vertex (found thanks to the same-size blocks in binary diff)

pmeunier
Jan 12, 2022, 8:53 PM
J3WXJPRANTKZFWIKPERNAM73LV7Z2443K3CKJZNESRNXWV6G5XIAC

Dependencies

  • [2] SXEYMYF7 Fixing the bad changes in history (unfortunately, by rebooting).

Change contents

  • replacement in libpijul/src/diff/vertex_buffer.rs at line 282
    [2.778526][2.778526:778548]()
    i - 1
    [2.778526]
    [2.778548]
    let len = self.pos_a[i-1].vertex.end - self.pos_a[i-1].vertex.start;
    if pos < self.pos_a[i-1].pos + len || len == 0 {
    i - 1
    } else {
    i
    }