This commit is contained in:
Tim Waugh 2017-05-22 11:01:05 +01:00
commit f23332592b
8 changed files with 48 additions and 269 deletions

View file

@ -1,7 +1,7 @@
diff -up diffutils-3.3/src/diff.c.i18n diffutils-3.3/src/diff.c
--- diffutils-3.3/src/diff.c.i18n 2013-02-02 04:39:05.000000000 +0000
+++ diffutils-3.3/src/diff.c 2013-10-23 11:25:18.729708853 +0100
@@ -74,6 +74,8 @@ static void try_help (char const *, char
diff -up diffutils-3.6/src/diff.c.i18n diffutils-3.6/src/diff.c
--- diffutils-3.6/src/diff.c.i18n 2017-05-06 20:02:54.000000000 +0100
+++ diffutils-3.6/src/diff.c 2017-05-22 10:52:21.989254674 +0100
@@ -76,6 +76,8 @@ static void try_help (char const *, char
static void check_stdout (void);
static void usage (void);
@ -10,9 +10,9 @@ diff -up diffutils-3.3/src/diff.c.i18n diffutils-3.3/src/diff.c
/* If comparing directories, compare their common subdirectories
recursively. */
static bool recursive;
@@ -285,6 +287,13 @@ main (int argc, char **argv)
re_set_syntax (RE_SYNTAX_GREP | RE_NO_POSIX_BACKTRACKING);
@@ -298,6 +300,13 @@ main (int argc, char **argv)
excluded = new_exclude ();
presume_output_tty = false;
+#ifdef HANDLE_MULTIBYTE
+ if (MB_CUR_MAX > 1)
@ -24,9 +24,9 @@ diff -up diffutils-3.3/src/diff.c.i18n diffutils-3.3/src/diff.c
/* Decode the options. */
while ((c = getopt_long (argc, argv, shortopts, longopts, NULL)) != -1)
diff -up diffutils-3.3/src/diff.h.i18n diffutils-3.3/src/diff.h
--- diffutils-3.3/src/diff.h.i18n 2013-02-02 04:39:05.000000000 +0000
+++ diffutils-3.3/src/diff.h 2013-10-23 11:25:18.729708853 +0100
diff -up diffutils-3.6/src/diff.h.i18n diffutils-3.6/src/diff.h
--- diffutils-3.6/src/diff.h.i18n 2017-01-01 11:22:36.000000000 +0000
+++ diffutils-3.6/src/diff.h 2017-05-22 10:51:09.050371844 +0100
@@ -23,6 +23,17 @@
#include <stdio.h>
#include <unlocked-io.h>
@ -45,7 +45,7 @@ diff -up diffutils-3.3/src/diff.h.i18n diffutils-3.3/src/diff.h
/* What kind of changes a hunk contains. */
enum changes
{
@@ -365,7 +376,11 @@ extern void print_sdiff_script (struct c
@@ -381,7 +392,11 @@ extern void print_sdiff_script (struct c
extern char const change_letter[4];
extern char const pr_program[];
extern char *concat (char const *, char const *, char const *);
@ -58,9 +58,9 @@ diff -up diffutils-3.3/src/diff.h.i18n diffutils-3.3/src/diff.h
extern lin translate_line_number (struct file_data const *, lin);
extern struct change *find_change (struct change *);
extern struct change *find_reverse_change (struct change *);
diff -up diffutils-3.3/src/io.c.i18n diffutils-3.3/src/io.c
--- diffutils-3.3/src/io.c.i18n 2013-02-02 04:39:05.000000000 +0000
+++ diffutils-3.3/src/io.c 2013-10-23 12:03:09.155348827 +0100
diff -up diffutils-3.6/src/io.c.i18n diffutils-3.6/src/io.c
--- diffutils-3.6/src/io.c.i18n 2017-01-01 11:22:36.000000000 +0000
+++ diffutils-3.6/src/io.c 2017-05-22 10:51:09.050371844 +0100
@@ -23,6 +23,7 @@
#include <cmpbuf.h>
#include <file-type.h>
@ -69,7 +69,7 @@ diff -up diffutils-3.3/src/io.c.i18n diffutils-3.3/src/io.c
/* Rotate an unsigned value to the left. */
#define ROL(v, n) ((v) << (n) | (v) >> (sizeof (v) * CHAR_BIT - (n)))
@@ -208,6 +209,28 @@ slurp (struct file_data *current)
@@ -215,6 +216,28 @@ slurp (struct file_data *current)
/* Split the file into lines, simultaneously computing the equivalence
class for each line. */
@ -98,7 +98,7 @@ diff -up diffutils-3.3/src/io.c.i18n diffutils-3.3/src/io.c
static void
find_and_hash_each_line (struct file_data *current)
@@ -234,12 +257,300 @@ find_and_hash_each_line (struct file_dat
@@ -241,12 +264,300 @@ find_and_hash_each_line (struct file_dat
bool same_length_diff_contents_compare_anyway =
diff_length_compare_anyway | ig_case;
@ -399,7 +399,7 @@ diff -up diffutils-3.3/src/io.c.i18n diffutils-3.3/src/io.c
/* Hash this line until we find a newline. */
switch (ig_white_space)
{
@@ -390,7 +701,7 @@ find_and_hash_each_line (struct file_dat
@@ -397,7 +708,7 @@ find_and_hash_each_line (struct file_dat
else if (!diff_length_compare_anyway)
continue;
@ -408,10 +408,10 @@ diff -up diffutils-3.3/src/io.c.i18n diffutils-3.3/src/io.c
break;
}
diff -up diffutils-3.3/src/util.c.i18n diffutils-3.3/src/util.c
--- diffutils-3.3/src/util.c.i18n 2013-02-02 04:39:05.000000000 +0000
+++ diffutils-3.3/src/util.c 2013-10-23 11:25:18.730708857 +0100
@@ -408,7 +408,8 @@ finish_output (void)
diff -up diffutils-3.6/src/util.c.i18n diffutils-3.6/src/util.c
--- diffutils-3.6/src/util.c.i18n 2017-05-18 18:39:59.000000000 +0100
+++ diffutils-3.6/src/util.c 2017-05-22 10:51:09.050371844 +0100
@@ -985,7 +985,8 @@ finish_output (void)
Return nonzero if the lines differ. */
bool
@ -421,7 +421,7 @@ diff -up diffutils-3.3/src/util.c.i18n diffutils-3.3/src/util.c
{
register char const *t1 = s1;
register char const *t2 = s2;
@@ -564,6 +565,354 @@ lines_differ (char const *s1, char const
@@ -1141,6 +1142,354 @@ lines_differ (char const *s1, char const
return true;
}