From: Petteri Aimonen <jpa@git.mail.kapsi.fi>
Date: Wed, 8 Apr 2015 15:05:25 +0000 (+0300)
Subject: Fix problem with plugin options on Python 2.7.2 and older.
X-Git-Tag: 3.99.1~14^2~135
X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=9e4ac1ba9b27ebb8d37a6c58ae11fa748ddb7384;p=apps%2Flow-level-can-service.git

Fix problem with plugin options on Python 2.7.2 and older.

Update issue 153
Status: FixedInGit
---

diff --git a/generator/nanopb_generator.py b/generator/nanopb_generator.py
index b1ee04e..49ce4da 100755
--- a/generator/nanopb_generator.py
+++ b/generator/nanopb_generator.py
@@ -1384,8 +1384,15 @@ def main_plugin():
     data = sys.stdin.read()
     request = plugin_pb2.CodeGeneratorRequest.FromString(data)
     
+    try:
+        # Versions of Python prior to 2.7.3 do not support unicode
+        # input to shlex.split(). Try to convert to str if possible.
+        params = str(request.parameter)
+    except UnicodeEncodeError:
+        params = request.parameter
+    
     import shlex
-    args = shlex.split(request.parameter)
+    args = shlex.split(params)
     options, dummy = optparser.parse_args(args)
     
     Globals.verbose_options = options.verbose