Mercurial > vim
annotate src/po/sjiscorr.c @ 7662:4d34891e98f4 v7.4.1130
commit https://github.com/vim/vim/commit/61ff4dd6a4d47bd32383fe28087be2b37dec53f4
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jan 18 20:30:17 2016 +0100
patch 7.4.1130
Problem: Memory leak in :vimgrep.
Solution: Call FreeWild(). (Yegappan Lakshmanan)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 18 Jan 2016 20:45:04 +0100 |
parents | 65df2fba429b |
children | 33ba2adb6065 |
rev | line source |
---|---|
7 | 1 /* |
2 * Simplistic program to correct SJIS inside strings. When a trail byte is a | |
3 * backslash it needs to be doubled. | |
4 * Public domain. | |
5 */ | |
6 #include <stdio.h> | |
7 #include <string.h> | |
8 | |
9 int | |
10 main(argc, argv) | |
11 int argc; | |
12 char **argv; | |
13 { | |
14 char buffer[BUFSIZ]; | |
15 char *p; | |
16 | |
17 while (fgets(buffer, BUFSIZ, stdin) != NULL) | |
18 { | |
19 for (p = buffer; *p != 0; p++) | |
20 { | |
4502
605c9ce57ec3
Updated runtime files, language files and translations.
Bram Moolenaar <bram@vim.org>
parents:
7
diff
changeset
|
21 if (strncmp(p, "charset=utf-8", 13) == 0) |
7 | 22 { |
23 fputs("charset=cp932", stdout); | |
4502
605c9ce57ec3
Updated runtime files, language files and translations.
Bram Moolenaar <bram@vim.org>
parents:
7
diff
changeset
|
24 p += 12; |
7 | 25 } |
6351 | 26 else if (strncmp(p, "# Original translations", 23) == 0) |
7 | 27 { |
28 fputs("# generated from ja.po, DO NOT EDIT", stdout); | |
29 while (p[1] != '\n') | |
30 ++p; | |
31 } | |
32 else if (*(unsigned char *)p == 0x81 && p[1] == '_') | |
33 { | |
34 putchar('\\'); | |
35 ++p; | |
36 } | |
37 else | |
38 { | |
39 if (*p & 0x80) | |
40 { | |
41 putchar(*p++); | |
42 if (*p == '\\') | |
43 putchar(*p); | |
44 } | |
45 putchar(*p); | |
46 } | |
47 } | |
48 } | |
49 } |