1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-06-02 01:16:12 +02:00

convert: convert renormalize_buffer to take an index

Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Brandon Williams 2017-06-12 15:13:56 -07:00 committed by Junio C Hamano
parent 82b474e025
commit a33e0b2a77
4 changed files with 9 additions and 6 deletions

View File

@ -1,3 +1,4 @@
#define NO_THE_INDEX_COMPATIBILITY_MACROS
#include "cache.h" #include "cache.h"
#include "attr.h" #include "attr.h"
#include "run-command.h" #include "run-command.h"
@ -1165,14 +1166,15 @@ int convert_to_working_tree(const char *path, const char *src, size_t len, struc
return convert_to_working_tree_internal(path, src, len, dst, 0); return convert_to_working_tree_internal(path, src, len, dst, 0);
} }
int renormalize_buffer(const char *path, const char *src, size_t len, struct strbuf *dst) int renormalize_buffer(const struct index_state *istate, const char *path,
const char *src, size_t len, struct strbuf *dst)
{ {
int ret = convert_to_working_tree_internal(path, src, len, dst, 1); int ret = convert_to_working_tree_internal(path, src, len, dst, 1);
if (ret) { if (ret) {
src = dst->buf; src = dst->buf;
len = dst->len; len = dst->len;
} }
return ret | convert_to_git(&the_index, path, src, len, dst, SAFE_CRLF_RENORMALIZE); return ret | convert_to_git(istate, path, src, len, dst, SAFE_CRLF_RENORMALIZE);
} }
/***************************************************************** /*****************************************************************

View File

@ -46,7 +46,8 @@ extern int convert_to_git(const struct index_state *istate,
struct strbuf *dst, enum safe_crlf checksafe); struct strbuf *dst, enum safe_crlf checksafe);
extern int convert_to_working_tree(const char *path, const char *src, extern int convert_to_working_tree(const char *path, const char *src,
size_t len, struct strbuf *dst); size_t len, struct strbuf *dst);
extern int renormalize_buffer(const char *path, const char *src, size_t len, extern int renormalize_buffer(const struct index_state *istate,
const char *path, const char *src, size_t len,
struct strbuf *dst); struct strbuf *dst);
static inline int would_convert_to_git(const struct index_state *istate, static inline int would_convert_to_git(const struct index_state *istate,
const char *path) const char *path)

View File

@ -339,7 +339,7 @@ static const struct ll_merge_driver *find_ll_merge_driver(const char *merge_attr
static void normalize_file(mmfile_t *mm, const char *path) static void normalize_file(mmfile_t *mm, const char *path)
{ {
struct strbuf strbuf = STRBUF_INIT; struct strbuf strbuf = STRBUF_INIT;
if (renormalize_buffer(path, mm->ptr, mm->size, &strbuf)) { if (renormalize_buffer(&the_index, path, mm->ptr, mm->size, &strbuf)) {
free(mm->ptr); free(mm->ptr);
mm->size = strbuf.len; mm->size = strbuf.len;
mm->ptr = strbuf_detach(&strbuf, NULL); mm->ptr = strbuf_detach(&strbuf, NULL);

View File

@ -1639,8 +1639,8 @@ static int blob_unchanged(struct merge_options *opt,
* performed. Comparison can be skipped if both files are * performed. Comparison can be skipped if both files are
* unchanged since their sha1s have already been compared. * unchanged since their sha1s have already been compared.
*/ */
if (renormalize_buffer(path, o.buf, o.len, &o) | if (renormalize_buffer(&the_index, path, o.buf, o.len, &o) |
renormalize_buffer(path, a.buf, a.len, &a)) renormalize_buffer(&the_index, path, a.buf, a.len, &a))
ret = (o.len == a.len && !memcmp(o.buf, a.buf, o.len)); ret = (o.len == a.len && !memcmp(o.buf, a.buf, o.len));
error_return: error_return: