[Toaster] [PATCH] toaster: Fix adding of bitbake variables containing ':'

Ed Bartosh ed.bartosh at linux.intel.com
Tue Aug 23 04:06:26 PDT 2016


On Tue, Aug 23, 2016 at 11:57:50AM +0200, Alexander Egorenkov wrote:
> This fix is a backport from toaster-next.
> 
> Krogoth Toaster is unable to add a variable containing ':'
> and fails with the following error message:
> 
> error on request:
> too many values to unpack
> Traceback (most recent call last):
>  File "bitbake/lib/toaster/toastergui/views.py", line 2171, in xhr_configvaredit
>   variable, value = t.spli(":")
> ValueError: too many values to unpack.
> 
> [YOCTO #10170]
> 
> Signed-off-by: Alexander Egorenkov <Alexander.Egorenkov at vector.com>
> ---
>  bitbake/lib/toaster/toastergui/views.py | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/bitbake/lib/toaster/toastergui/views.py b/bitbake/lib/toaster/toastergui/views.py
> index bd5bf63..2b714dc 100755
> --- a/bitbake/lib/toaster/toastergui/views.py
> +++ b/bitbake/lib/toaster/toastergui/views.py
> @@ -2164,11 +2164,12 @@ if True:
>      def xhr_configvaredit(request, pid):
>          try:
>              prj = Project.objects.get(id = pid)
> +            max_split=1
>              # add conf variables
>              if 'configvarAdd' in request.POST:
>                  t=request.POST['configvarAdd'].strip()
>                  if ":" in t:
> -                    variable, value = t.split(":")
> +                    variable, value = t.split(":", max_split)
>                  else:
>                      variable = t
>                      value = ""
> @@ -2178,7 +2179,7 @@ if True:
>              if 'configvarChange' in request.POST:
>                  t=request.POST['configvarChange'].strip()
>                  if ":" in t:
> -                    variable, value = t.split(":")
> +                    variable, value = t.split(":", max_split)
>                  else:
>                      variable = t
>                      value = ""

Would it be better to use 'variable, value = t.split(":", 1)' in both
lines, i.e. without adding max_split variable?
It would be more readable in my opinion.

--
Regards,
Ed


More information about the toaster mailing list