Author: forenr
Date: Wed Jun  1 03:51:17 2011
New Revision: 38908
URL: http://www.lyx.org/trac/changeset/38908

Log:
Query about the exact length of a short name, as it may happen that
a short name length is actually greater than the long name length.

Modified:
   lyx-devel/trunk/lib/configure.py

Modified: lyx-devel/trunk/lib/configure.py
==============================================================================
--- lyx-devel/trunk/lib/configure.py    Wed Jun  1 02:40:03 2011        (r38907)
+++ lyx-devel/trunk/lib/configure.py    Wed Jun  1 03:51:17 2011        (r38908)
@@ -105,8 +105,9 @@
             from ctypes import windll, create_unicode_buffer
             GetShortPathName = windll.kernel32.GetShortPathNameW
             longname = unicode(tmpfname)
-            shortname = create_unicode_buffer(len(longname)+1)
-            if GetShortPathName(longname, shortname, len(longname)+1):
+            shortlen = GetShortPathName(longname, 0, 0)
+            shortname = create_unicode_buffer(shortlen)
+            if GetShortPathName(longname, shortname, shortlen):
                 inpname = shortname.value.replace('\\', '/')
             else:
                 inpname = tmpfname.replace('\\', '/')

Reply via email to