Back out Windows-specific Unicode argument support for v1.7.
authordavid-sarah <david-sarah@jacaranda.org>
Wed, 9 Jun 2010 00:08:03 +0000 (17:08 -0700)
committerdavid-sarah <david-sarah@jacaranda.org>
Wed, 9 Jun 2010 00:08:03 +0000 (17:08 -0700)
src/allmydata/test/test_stringutils.py
src/allmydata/util/stringutils.py
windows/tahoe.py

index a4095c841a55dc796f794ac9aad20754143a2fd2..413eae8886119c6efb157420927c9c2c57041d42 100644 (file)
@@ -27,7 +27,7 @@ if __name__ == "__main__":
     print "    platform = '%s'" % sys.platform
     print "    filesystem_encoding = '%s'" % sys.getfilesystemencoding()
     print "    output_encoding = '%s'" % sys.stdout.encoding
-    print "    argv_encoding = '%s'" % (sys.platform == "win32" and 'utf-8' or sys.stdout.encoding)
+    print "    argv_encoding = '%s'" % (sys.platform == "win32" and 'ascii' or sys.stdout.encoding)
 
     try:
         tmpdir = tempfile.mkdtemp()
@@ -272,31 +272,28 @@ class UbuntuKarmicLatin1(StringUtils, unittest.TestCase):
 class WindowsXP(StringUtils, unittest.TestCase):
     uname = 'Windows XP 5.1.2600 x86 x86 Family 15 Model 75 Step ping 2, AuthenticAMD'
     output = 'lumi\x8are'
-    argv = 'lumi\xc3\xa8re'
     platform = 'win32'
     filesystem_encoding = 'mbcs'
     output_encoding = 'cp850'
-    argv_encoding = 'utf-8'
+    argv_encoding = 'ascii'
     dirlist = [u'Blah blah.txt', u'test_file', u'\xc4rtonwall.mp3']
 
 class WindowsXP_UTF8(StringUtils, unittest.TestCase):
     uname = 'Windows XP 5.1.2600 x86 x86 Family 15 Model 75 Step ping 2, AuthenticAMD'
     output = 'lumi\xc3\xa8re'
-    argv = 'lumi\xc3\xa8re'
     platform = 'win32'
     filesystem_encoding = 'mbcs'
     output_encoding = 'cp65001'
-    argv_encoding = 'utf-8'
+    argv_encoding = 'ascii'
     dirlist = [u'Blah blah.txt', u'test_file', u'\xc4rtonwall.mp3']
 
 class WindowsVista(StringUtils, unittest.TestCase):
     uname = 'Windows Vista 6.0.6000 x86 x86 Family 6 Model 15 Stepping 11, GenuineIntel'
     output = 'lumi\x8are'
-    argv = 'lumi\xc3\xa8re'
     platform = 'win32'
     filesystem_encoding = 'mbcs'
     output_encoding = 'cp850'
-    argv_encoding = 'utf-8'
+    argv_encoding = 'ascii'
     dirlist = [u'Blah blah.txt', u'test_file', u'\xc4rtonwall.mp3']
 
 class MacOSXLeopard(StringUtils, unittest.TestCase):
index eb5119143860ce3fe089c5a9919c4610eaa020d8..d5c20865d3c97bcf001e13883ccd82bd5e49846f 100644 (file)
@@ -41,8 +41,8 @@ def _reload():
     filesystem_encoding = _canonical_encoding(sys.getfilesystemencoding())
     output_encoding = _canonical_encoding(sys.stdout.encoding or locale.getpreferredencoding())
     if sys.platform == 'win32':
-        # arguments are converted to utf-8 in windows/tahoe.py
-        argv_encoding = 'utf-8'
+        # Unicode arguments are not supported on Windows yet; see #565 and #1074.
+        argv_encoding = 'ascii'
     else:
         argv_encoding = output_encoding
     is_unicode_platform = sys.platform in ["win32", "darwin"]
index 42161f48e82e0bb430921e38ff78a82ee70685e1..e3e4b469aba4643c794ba17a53351bc24997af2c 100644 (file)
@@ -4,16 +4,6 @@ import depends # import dependencies so that py2exe finds them
 _junk = depends # appease pyflakes
 
 import sys
-from ctypes import WINFUNCTYPE, POINTER, byref, c_wchar_p, c_int, windll
 from allmydata.scripts import runner
 
-GetCommandLineW = WINFUNCTYPE(c_wchar_p)(("GetCommandLineW", windll.kernel32))
-CommandLineToArgvW = WINFUNCTYPE(POINTER(c_wchar_p), c_wchar_p, POINTER(c_int)) \
-                         (("CommandLineToArgvW", windll.shell32))
-
-argc = c_int(0)
-argv = CommandLineToArgvW(GetCommandLineW(), byref(argc))
-argv_utf8 = [argv[i].encode('utf-8') for i in xrange(1, argc.value)]
-
-rc = runner(argv_utf8, install_node_control=False)
-sys.exit(rc)
\ No newline at end of file
+sys.exit(runner(install_node_control=False))
\ No newline at end of file