Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
diff.c: emit_diff_symbol learns DIFF_SYMBOL_NO_LF_EOF
author
Stefan Beller
<sbeller@google.com>
Fri, 30 Jun 2017 00:06:52 +0000
(17:06 -0700)
committer
Junio C Hamano
<gitster@pobox.com>
Fri, 30 Jun 2017 20:13:01 +0000
(13:13 -0700)
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff.c
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
68abc6f
)
diff --git
a/diff.c
b/diff.c
index 6e48a129ed28001b9fe5798befa54ea427a28ca0..488096b757377b4f86109253e3b275ea54254087 100644
(file)
--- a/
diff.c
+++ b/
diff.c
@@
-561,6
+561,7
@@
static void emit_line(struct diff_options *o, const char *set, const char *reset
}
enum diff_symbol {
}
enum diff_symbol {
+ DIFF_SYMBOL_NO_LF_EOF,
DIFF_SYMBOL_CONTEXT_FRAGINFO,
DIFF_SYMBOL_CONTEXT_MARKER,
DIFF_SYMBOL_SEPARATOR
DIFF_SYMBOL_CONTEXT_FRAGINFO,
DIFF_SYMBOL_CONTEXT_MARKER,
DIFF_SYMBOL_SEPARATOR
@@
-569,8
+570,16
@@
enum diff_symbol {
static void emit_diff_symbol(struct diff_options *o, enum diff_symbol s,
const char *line, int len)
{
static void emit_diff_symbol(struct diff_options *o, enum diff_symbol s,
const char *line, int len)
{
+ static const char *nneof = " No newline at end of file\n";
const char *context, *reset;
switch (s) {
const char *context, *reset;
switch (s) {
+ case DIFF_SYMBOL_NO_LF_EOF:
+ context = diff_get_color_opt(o, DIFF_CONTEXT);
+ reset = diff_get_color_opt(o, DIFF_RESET);
+ putc('\n', o->file);
+ emit_line_0(o, context, reset, '\\',
+ nneof, strlen(nneof));
+ break;
case DIFF_SYMBOL_CONTEXT_FRAGINFO:
emit_line(o, "", "", line, len);
break;
case DIFF_SYMBOL_CONTEXT_FRAGINFO:
emit_line(o, "", "", line, len);
break;
@@
-751,7
+760,6
@@
static void emit_rewrite_lines(struct emit_callback *ecb,
int prefix, const char *data, int size)
{
const char *endp = NULL;
int prefix, const char *data, int size)
{
const char *endp = NULL;
- static const char *nneof = " No newline at end of file\n";
const char *reset = diff_get_color(ecb->color_diff, DIFF_RESET);
while (0 < size) {
const char *reset = diff_get_color(ecb->color_diff, DIFF_RESET);
while (0 < size) {
@@
-769,13
+777,8
@@
static void emit_rewrite_lines(struct emit_callback *ecb,
size -= len;
data += len;
}
size -= len;
data += len;
}
- if (!endp) {
- const char *context = diff_get_color(ecb->color_diff,
- DIFF_CONTEXT);
- putc('\n', ecb->opt->file);
- emit_line_0(ecb->opt, context, reset, '\\',
- nneof, strlen(nneof));
- }
+ if (!endp)
+ emit_diff_symbol(ecb->opt, DIFF_SYMBOL_NO_LF_EOF, NULL, 0);
}
static void emit_rewrite_diff(const char *name_a,
}
static void emit_rewrite_diff(const char *name_a,