split the diff-delta interface

This patch splits the diff-delta interface into index creation and delta
generation.  A wrapper is provided to preserve the diff-delta() call.

This will allow for an optimization in pack-objects.c where the source
object could be fixed and a full window of objects tentatively tried
against
that same source object without recomputing the source index each time.

This patch only restructure things, plus a couple cleanups for good
measure. There is no performance change yet.

Signed-off-by: Nicolas Pitre <nico@cam.org>
This commit is contained in:
Nicolas Pitre
2006-04-24 23:07:47 -04:00
committed by Junio C Hamano
parent 36932eab77
commit 08abe669c0
3 changed files with 155 additions and 92 deletions

View File

@ -13,8 +13,8 @@
#include <string.h>
#include "delta.h"
void *patch_delta(void *src_buf, unsigned long src_size,
void *delta_buf, unsigned long delta_size,
void *patch_delta(const void *src_buf, unsigned long src_size,
const void *delta_buf, unsigned long delta_size,
unsigned long *dst_size)
{
const unsigned char *data, *top;