author | Jeff King <peff@peff.net> | |
Mon, 16 Nov 2009 15:56:25 +0000 (10:56 -0500) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Mon, 16 Nov 2009 21:21:11 +0000 (13:21 -0800) | ||
commit | f4f19fb63449e1beee02b0ec845319f7115fa9d0 | |
tree | bf115c830576748b274877f040e477b6a9375fd8 | tree | snapshot |
parent | 78d553b7d7b269bb22ebd8b1198657c37484a3a0 | commit | diff |
diffcore-break: free filespec data as we go
As we look at each changed file and consider breaking it, we
load the blob data and make a decision about whether to
break, which is independent of any other blobs that might
have changed. However, we keep the data in memory while we
consider breaking all of the other files. Which means that
both versions of every file you are diffing are in memory at
the same time.
This patch instead frees the blob data as we finish with
each file pair, leading to much lower memory usage.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
As we look at each changed file and consider breaking it, we
load the blob data and make a decision about whether to
break, which is independent of any other blobs that might
have changed. However, we keep the data in memory while we
consider breaking all of the other files. Which means that
both versions of every file you are diffing are in memory at
the same time.
This patch instead frees the blob data as we finish with
each file pair, leading to much lower memory usage.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
diffcore-break.c | diff | blob | history |