Hi,

Vim cannot open a file if the path is exactly 259 characters (MAX_PATH - 1)
and 'enc' is set to utf-8 on Windows.
Following patch fixes the problem:

--- a/src/os_mswin.c
+++ b/src/os_mswin.c
@@ -411,7 +411,7 @@ mch_FullName(
             * - convert the result from UCS2 to 'encoding'.
             */
            wname = enc_to_utf16(fname, NULL);
-           if (wname != NULL && _wfullpath(wbuf, wname, MAX_PATH - 1) != NULL)
+           if (wname != NULL && _wfullpath(wbuf, wname, MAX_PATH) != NULL)
            {
                cname = utf16_to_enc((short_u *)wbuf, NULL);
                if (cname != NULL)


MAX_PATH is defined as 260 and it includes the last NUL.
The third parameter of _wfullpath() is length of the buffer including NUL, so
"- 1" is not needed.  (http://msdn.microsoft.com/en-us/library/506720ff.aspx)

Note: This problem is different from 
https://groups.google.com/d/topic/vim_dev/N10OYqPMvy0/discussion .

Regards,
Ken Takata

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui