]> code.ossystems Code Review - openembedded-core.git/commitdiff
For ${@}, run str() on the result
authorChris Larson <chris_larson@mentor.com>
Tue, 20 Apr 2010 22:54:42 +0000 (15:54 -0700)
committerRichard Purdie <rpurdie@linux.intel.com>
Fri, 2 Jul 2010 14:41:34 +0000 (15:41 +0100)
(Bitbake rev: cf1a51eab11f645c95e5fa278221f78c129b9dd1)

Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
bitbake/lib/bb/data_smart.py

index 9436023b30933ed4c9fc044a58404bba085e1fa3..1e65014028776583872ffe7261cbbf8fb298c82c 100644 (file)
@@ -65,9 +65,8 @@ class DataSmart:
         def python_sub(match):
             code = match.group()[3:-1]
             codeobj = compile(code.strip(), varname or "<expansion>", "eval")
-            s = utils.better_eval(codeobj, {"d": self})
-            if isinstance(s, int): s = str(s)
-            return s
+            value = utils.better_eval(codeobj, {"d": self})
+            return str(value)
 
         if not isinstance(s, basestring): # sanity check
             return s
@@ -80,9 +79,8 @@ class DataSmart:
             try:
                 s = __expand_var_regexp__.sub(var_sub, s)
                 s = __expand_python_regexp__.sub(python_sub, s)
-                if s == olds: break
-                if not isinstance(s, basestring): # sanity check
-                    bb.msg.error(bb.msg.domain.Data, 'expansion of %s returned non-string %s' % (olds, s))
+                if s == olds:
+                    break
             except KeyboardInterrupt:
                 raise
             except: