]>
Commit | Line | Data |
---|---|---|
be561239 AG |
1 | To: vim-dev@vim.org |
2 | Subject: Patch 6.3.022 (extra) | |
3 | Fcc: outbox | |
4 | From: Bram Moolenaar <Bram@moolenaar.net> | |
5 | Mime-Version: 1.0 | |
6 | Content-Type: text/plain; charset=ISO-8859-1 | |
7 | Content-Transfer-Encoding: 8bit | |
8 | ------------ | |
9 | ||
10 | Patch 6.3.022 (extra) | |
11 | Problem: Win32: When the last character of a file name is a multi-byte | |
12 | character and the last byte is a path separator, the file cannot | |
13 | be written. A trail byte that is a space makes that a file cannot | |
14 | be opened from the command line. | |
15 | Solution: Recognize double-byte characters when parsing the command line. | |
16 | In mch_stat() check for the last byte to be part of a multi-byte | |
17 | character. (Taro Muraoka) | |
18 | Files: src/gui_w48.c, src/os_mswin.c | |
19 | ||
20 | ||
21 | *** ../vim-6.3.021/src/gui_w48.c Wed Jun 9 14:56:26 2004 | |
22 | --- src/gui_w48.c Sat Sep 4 16:18:32 2004 | |
23 | *************** | |
24 | *** 3376,3381 **** | |
25 | --- 3376,3391 ---- | |
26 | { | |
27 | if (pnew != NULL) | |
28 | *pnew++ = *p; | |
29 | + #ifdef FEAT_MBYTE | |
30 | + /* Can't use mb_* functions, because 'encoding' is not | |
31 | + * initialized yet here. */ | |
32 | + if (IsDBCSLeadByte(*p)) | |
33 | + { | |
34 | + ++p; | |
35 | + if (pnew != NULL) | |
36 | + *pnew++ = *p; | |
37 | + } | |
38 | + #endif | |
39 | ++p; | |
40 | } | |
41 | } | |
42 | *** ../vim-6.3.021/src/os_mswin.c Wed Jun 9 14:56:26 2004 | |
43 | --- src/os_mswin.c Sat Sep 4 16:10:16 2004 | |
44 | *************** | |
45 | *** 448,453 **** | |
46 | --- 448,457 ---- | |
47 | p = buf + strlen(buf); | |
48 | if (p > buf) | |
49 | --p; | |
50 | + #ifdef FEAT_MBYTE | |
51 | + if (p > buf && has_mbyte) | |
52 | + p -= (*mb_head_off)(buf, p); | |
53 | + #endif | |
54 | if (p > buf && (*p == '\\' || *p == '/') && p[-1] != ':') | |
55 | *p = NUL; | |
56 | #ifdef FEAT_MBYTE | |
57 | *** ../vim-6.3.021/src/version.c Sat Sep 4 16:05:51 2004 | |
58 | --- src/version.c Sat Sep 4 16:19:36 2004 | |
59 | *************** | |
60 | *** 643,644 **** | |
61 | --- 643,646 ---- | |
62 | { /* Add new patch number below this line */ | |
63 | + /**/ | |
64 | + 22, | |
65 | /**/ | |
66 | ||
67 | -- | |
68 | Back up my hard drive? I can't find the reverse switch! | |
69 | ||
70 | /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ | |
71 | /// Sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ | |
72 | \\\ Project leader for A-A-P -- http://www.A-A-P.org /// | |
73 | \\\ Buy at Amazon and help AIDS victims -- http://ICCF.nl/click1.html /// |