[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25166] trunk/blender/source/blender/ python/intern/bpy_interface.c: [#20021] Non-ASCII characters on blender 2. 5 alpha 0

Campbell Barton ideasman42 at gmail.com
Mon Dec 7 11:41:16 CET 2009


Revision: 25166
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25166
Author:   campbellbarton
Date:     2009-12-07 11:41:16 +0100 (Mon, 07 Dec 2009)

Log Message:
-----------
[#20021] Non-ASCII characters on blender 2.5 alpha 0
could not redo the bug on my system, fix suggested by Yomgui on blendercoders.

Modified Paths:
--------------
    trunk/blender/source/blender/python/intern/bpy_interface.c

Modified: trunk/blender/source/blender/python/intern/bpy_interface.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_interface.c	2009-12-07 10:40:55 UTC (rev 25165)
+++ trunk/blender/source/blender/python/intern/bpy_interface.c	2009-12-07 10:41:16 UTC (rev 25166)
@@ -313,11 +313,25 @@
 	/* sigh, why do python guys not have a char** version anymore? :( */
 	{
 		int i;
+#if 0
 		PyObject *py_argv= PyList_New(argc);
-
 		for (i=0; i<argc; i++)
 			PyList_SET_ITEM(py_argv, i, PyUnicode_FromString(argv[i]));
 
+#else	// should fix bug #20021 - utf path name problems
+		PyObject *py_argv= PyList_New(0);
+		for (i=0; i<argc; i++) {
+			PyObject *item= PyUnicode_Decode(argv[i], strlen(argv[i]), Py_FileSystemDefaultEncoding, NULL);
+			if(item==NULL) { // should never happen
+				PyErr_Print();
+				PyErr_Clear();
+			}
+			else {
+				PyList_Append(py_argv, item);
+				Py_DECREF(item);
+			}
+		}
+#endif
 		PySys_SetObject("argv", py_argv);
 		Py_DECREF(py_argv);
 	}





More information about the Bf-blender-cvs mailing list