diff options
Diffstat (limited to 'app-text/aspell/files/aspell-0.50.5-charcount.patch')
-rw-r--r-- | app-text/aspell/files/aspell-0.50.5-charcount.patch | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/app-text/aspell/files/aspell-0.50.5-charcount.patch b/app-text/aspell/files/aspell-0.50.5-charcount.patch deleted file mode 100644 index b42da38d9800..000000000000 --- a/app-text/aspell/files/aspell-0.50.5-charcount.patch +++ /dev/null @@ -1,77 +0,0 @@ -diff -Nrup aspell-0.50.5.orig/prog/compress.c aspell-0.50.5/prog/compress.c ---- aspell-0.50.5.orig/prog/compress.c 2002-08-31 14:51:11.000000000 -0400 -+++ aspell-0.50.5/prog/compress.c 2004-08-15 15:07:26.000000000 -0400 -@@ -28,24 +28,27 @@ - - #endif - -+#define BUFSIZE 256 -+ - void usage () - { - fputs("Compresses or uncompresses sorted word lists.\n" , stderr); - fputs("For best result the locale should be set to C\n" , stderr); - fputs("before sorting by setting the environmental\n" , stderr); - fputs("variable LANG to \"C\" before sorting.\n" , stderr); -- fputs("Copyright 2001 by Kevin Atkinson.\n" , stderr); -+ fputs("Copyright 2001-2004 by Kevin Atkinson.\n" , stderr); - fputs("Usage: word-list-compress c[ompress]|d[ecompress]\n" , stderr); - } - --static int get_word(FILE * in, char * w) -+static int get_word(FILE * in, char * w, size_t bufsize) - { - int c; - while (c = getc(in), c != EOF && c <= 32); - if (c == EOF) return 0; - do { - *w++ = (char)(c); -- } while (c = getc(in), c != EOF && c > 32); -+ --bufsize; -+ } while (c = getc(in), c != EOF && c > 32 && bufsize > 1); - *w = '\0'; - ungetc(c, in); - if (c == EOF) return 0; -@@ -61,15 +64,15 @@ int main (int argc, const char *argv[]) - - } else if (argv[1][0] == 'c') { - -- char s1[256]; -- char s2[256]; -+ char s1[BUFSIZE]; -+ char s2[BUFSIZE]; - char * prev = s2; - char * cur = s1; - *prev = '\0'; - - SETBIN (stdout); - -- while (get_word(stdin, cur)) { -+ while (get_word(stdin, cur, BUFSIZE)) { - int i = 0; - /* get the length of the prefix */ - while (prev[i] != '\0' && cur[i] != '\0' && prev[i] == cur[i]) -@@ -99,9 +102,10 @@ int main (int argc, const char *argv[]) - while (i != -1 ) { - if (i == 0) - i = getc(stdin); -- --i; -- while ((c = getc(stdin)) > 32) -+ --i; if (i < 0) goto error; -+ while ((c = getc(stdin)) > 32 && i < BUFSIZE) - cur[i++] = (char)c; -+ if (i >= BUFSIZE) goto error; - cur[i] = '\0'; - fputs(cur, stdout); - putc('\n', stdout); -@@ -109,6 +113,10 @@ int main (int argc, const char *argv[]) - } - return 0; - -+error: -+ fputs("ERROR: Corrupt Input.\n", stderr); -+ return 2; -+ - } else { - - usage(); |