diff --git a/src/po/sjiscorr.c b/src/po/sjiscorr.c index c6c39833de..6decb9216a 100644 --- a/src/po/sjiscorr.c +++ b/src/po/sjiscorr.c @@ -1,17 +1,28 @@ -/* - * Simplistic program to correct SJIS inside strings. When a trail byte is a - * backslash it needs to be doubled. - * Public domain. - */ +// Simplistic program to correct SJIS inside strings. When a trail byte is a +// backslash it needs to be doubled. +// Public domain. + #include #include +#ifdef _WIN32 +# include +# include +#endif + int main(int argc, char **argv) { char buffer[BUFSIZ]; char *p; + // Windows only: put standard input and output into binary mode so that the + // line endings in the output match those in the input. +#ifdef _WIN32 + _setmode(_fileno(stdin), _O_BINARY); + _setmode(_fileno(stdout), _O_BINARY); +#endif + while (fgets(buffer, BUFSIZ, stdin) != NULL) { for (p = buffer; *p != 0; p++) @@ -22,11 +33,10 @@ main(int argc, char **argv) fputs("charset=CP932", stdout); p += 12; } - else if (strncmp(p, "# Original translations", 23) == 0) + else if (strncmp(p, "# Original translations.", 24) == 0) { + p += 24 - 1; // subtracting 1 by considering "p++" in the loop. fputs("# Generated from ja.po, DO NOT EDIT.", stdout); - while (p[1] != '\n') - ++p; } else if (*(unsigned char *)p == 0x81 && p[1] == '_') { @@ -46,3 +56,5 @@ main(int argc, char **argv) } } } + +// vim:set ts=4 sts=4 sw=4 noet: diff --git a/src/version.c b/src/version.c index 4790f8de2e..71388c23ed 100644 --- a/src/version.c +++ b/src/version.c @@ -734,6 +734,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 2099, /**/ 2098, /**/