Decode arguments to unicode if necessary (needed at least for unicode file
authorZac Medico <zmedico@gentoo.org>
Tue, 4 Aug 2009 20:00:20 +0000 (20:00 -0000)
committerZac Medico <zmedico@gentoo.org>
Tue, 4 Aug 2009 20:00:20 +0000 (20:00 -0000)
names passed to the owners command).

svn path=/main/trunk/; revision=13906

bin/portageq

index cf9c5f066f4628a65375dfc798ff2968b62ec779..825152911b3366564bfd52bd64620d302a9aa9e2 100755 (executable)
@@ -605,10 +605,15 @@ def main():
                sys.path.insert(0, pym_path)
                import portage
 
+       args = sys.argv[2:]
+       if args and not isinstance(args[0], unicode):
+               for i in xrange(len(args)):
+                       args[i] = unicode(args[i], encoding='utf_8', errors='replace')
+
        try:
                if uses_root:
-                       sys.argv[2] = portage.settings["ROOT"]
-               retval = function(sys.argv[2:])
+                       args[0] = portage.settings["ROOT"]
+               retval = function(args)
                if retval:
                        sys.exit(retval)
        except portage.exception.PermissionDenied, e: