git/vcs-svn
Jonathan Nieder bcd254621f vcs-svn: read the preimage when applying deltas
The source view offset heading each svndiff0 window represents a
number of bytes past the beginning of the preimage.  Together with the
source view length, it dictates to the delta applier what portion of
the preimage instructions will refer to.  Read that portion right away
using the sliding window code.

Maybe some day we will use mmap to read data more lazily.

Subversion's implementation tolerates source view offsets pointing
past the end of the preimage file but we do not, for simplicity.

This does not teach the delta applier to read instructions or copy
data from the source view.  Deltas that could produce nonempty output
will still be rejected.

Improved-by: Ramkumar Ramachandra <artagnon@gmail.com>
Improved-by: David Barr <david.barr@cordelta.com>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Acked-by: Ramkumar Ramachandra <artagnon@gmail.com>
2011-03-27 22:50:01 -05:00
..
fast_export.c vcs-svn: add missing cast to printf argument 2011-03-27 12:21:12 -05:00
fast_export.h vcs-svn: handle log message with embedded NUL 2011-03-26 00:49:37 -05:00
LICENSE vcs-svn: learn to maintain a sliding view of a file 2011-03-27 20:23:32 -05:00
line_buffer.c vcs-svn: make buffer_read_binary API more convenient 2011-03-27 22:37:05 -05:00
line_buffer.h vcs-svn: make buffer_read_binary API more convenient 2011-03-27 22:37:05 -05:00
line_buffer.txt vcs-svn: remove buffer_read_string 2011-03-26 00:17:35 -05:00
obj_pool.h Add memory pool library 2010-08-14 19:35:37 -07:00
repo_tree.c vcs-svn: handle log message with embedded NUL 2011-03-26 00:49:37 -05:00
repo_tree.h vcs-svn: handle log message with embedded NUL 2011-03-26 00:49:37 -05:00
sliding_window.c vcs-svn: learn to maintain a sliding view of a file 2011-03-27 20:23:32 -05:00
sliding_window.h vcs-svn: learn to maintain a sliding view of a file 2011-03-27 20:23:32 -05:00
string_pool.c Add string-specific memory pool 2010-08-14 19:35:37 -07:00
string_pool.h Add string-specific memory pool 2010-08-14 19:35:37 -07:00
string_pool.txt Add string-specific memory pool 2010-08-14 19:35:37 -07:00
svndiff.c vcs-svn: read the preimage when applying deltas 2011-03-27 22:50:01 -05:00
svndiff.h vcs-svn: skeleton of an svn delta parser 2011-03-27 22:41:38 -05:00
svndump.c vcs-svn: handle log message with embedded NUL 2011-03-26 00:49:37 -05:00
svndump.h vcs-svn: Check for errors from open() 2010-11-24 14:51:42 -08:00
trp.h treap: make treap_insert return inserted node 2010-12-07 16:03:55 -08:00
trp.txt treap: make treap_insert return inserted node 2010-12-07 16:03:55 -08:00