@@ -576,11 +576,12 @@ static void check_blank_at_eof(mmfile_t *mf1, mmfile_t *mf2,
576
576
}
577
577
578
578
static void emit_line_0 (struct diff_options * o ,
579
- const char * set_sign , const char * set , unsigned reverse , const char * reset ,
579
+ const char * set_sign , const char * set , const char * reset ,
580
580
int first , const char * line , int len )
581
581
{
582
582
int has_trailing_newline , has_trailing_carriage_return ;
583
583
int nofirst ;
584
+ int reverse = !!set && !!set_sign ;
584
585
FILE * file = o -> file ;
585
586
586
587
fputs (diff_line_prefix (o ), file );
@@ -625,7 +626,7 @@ static void emit_line_0(struct diff_options *o,
625
626
static void emit_line (struct diff_options * o , const char * set , const char * reset ,
626
627
const char * line , int len )
627
628
{
628
- emit_line_0 (o , set , NULL , 0 , reset , line [0 ], line + 1 , len - 1 );
629
+ emit_line_0 (o , set , NULL , reset , line [0 ], line + 1 , len - 1 );
629
630
}
630
631
631
632
enum diff_symbol {
@@ -998,15 +999,15 @@ static void emit_line_ws_markup(struct diff_options *o,
998
999
}
999
1000
1000
1001
if (!ws && !set_sign )
1001
- emit_line_0 (o , set , NULL , 0 , reset , sign , line , len );
1002
+ emit_line_0 (o , set , NULL , reset , sign , line , len );
1002
1003
else if (!ws ) {
1003
- emit_line_0 (o , set_sign , set , !! set_sign , reset , sign , line , len );
1004
+ emit_line_0 (o , set_sign , set , reset , sign , line , len );
1004
1005
} else if (blank_at_eof )
1005
1006
/* Blank line at EOF - paint '+' as well */
1006
- emit_line_0 (o , ws , NULL , 0 , reset , sign , line , len );
1007
+ emit_line_0 (o , ws , NULL , reset , sign , line , len );
1007
1008
else {
1008
1009
/* Emit just the prefix, then the rest. */
1009
- emit_line_0 (o , set_sign , set , !! set_sign , reset , sign , "" , 0 );
1010
+ emit_line_0 (o , set_sign , set , reset , sign , "" , 0 );
1010
1011
ws_check_emit (line , len , ws_rule ,
1011
1012
o -> file , set , reset , ws );
1012
1013
}
@@ -1029,7 +1030,7 @@ static void emit_diff_symbol_from_struct(struct diff_options *o,
1029
1030
context = diff_get_color_opt (o , DIFF_CONTEXT );
1030
1031
reset = diff_get_color_opt (o , DIFF_RESET );
1031
1032
putc ('\n' , o -> file );
1032
- emit_line_0 (o , context , NULL , 0 , reset , '\\' ,
1033
+ emit_line_0 (o , context , NULL , reset , '\\' ,
1033
1034
nneof , strlen (nneof ));
1034
1035
break ;
1035
1036
case DIFF_SYMBOL_SUBMODULE_HEADER :
0 commit comments