[gnome-continuous-yocto/gnomeostree-3.22-krogoth: 37/246] Fix random python backtrace in mutlilib handling code.



commit 3cc3ff62440e05c163db677b8ade853ce5cce14c
Author: Jeremy Puhlman <jpuhlman mvista com>
Date:   Mon Aug 1 09:02:54 2016 -0700

    Fix random python backtrace in mutlilib handling code.
    
    newval is not defined in all cases. Set to None and check if it is set.
    
      File
    "/local/foo/builds/x86/layers/openembedded-core/meta/classes/multilib_global.bbclass",
    line 90, in preferred_ml_updates(d=<bb.data_smart.DataSmart object at
    0xf6fd528c>):
                     if not d.getVar(newname, False):
        >                d.setVar(newname, localdata.expand(newval))
                 # Avoid future variable key expansion
    UnboundLocalError: local variable 'newval' referenced before assignment
    
    (From OE-Core rev: 25ebd3bbc1f9f4b1b6147d98dd43690c3bf03ee7)
    
    (From OE-Core rev: 81e6c67db85b5e4864aa11f6504a8bef59be8609)
    
    Signed-off-by: Jeremy Puhlman <jpuhlman mvista com>
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
    Signed-off-by: Armin Kuster <akuster808 gmail com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/classes/multilib_global.bbclass |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
---
diff --git a/meta/classes/multilib_global.bbclass b/meta/classes/multilib_global.bbclass
index 67dc72b..11ae268 100644
--- a/meta/classes/multilib_global.bbclass
+++ b/meta/classes/multilib_global.bbclass
@@ -72,6 +72,7 @@ def preferred_ml_updates(d):
             pkg = pkg.replace("virtual/", "")
             virt = "virtual/"
         for p in prefixes:
+            newval = None
             if pkg != "kernel":
                 newval = p + "-" + val
 
@@ -86,7 +87,7 @@ def preferred_ml_updates(d):
 
             # implement alternative multilib name
             newname = localdata.expand("PREFERRED_PROVIDER_" + virt + p + "-" + pkg)
-            if not d.getVar(newname, False):
+            if not d.getVar(newname, False) and newval != None:
                 d.setVar(newname, localdata.expand(newval))
         # Avoid future variable key expansion
         provexp = d.expand(prov)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]