Package: python-debianbts
Version: 2.7.2
Severity: normal
Tags: patch

Hi,

marshaling for get_bugs' "usertags" param doesn't seem to work properly.
There's some special casing with _build_int_array_el for lists and
tuples but not for dicts.  The below seems to make it work.

Cheers,
Julien

diff --git a/debianbts/debianbts.py b/debianbts/debianbts.py
index d638e26..8816b7a 100644
--- a/debianbts/debianbts.py
+++ b/debianbts/debianbts.py
@@ -405,6 +405,13 @@ def get_bugs(*key_value):
         arg_name = 'arg' + str(arg_n)
         if isinstance(kv, (list, tuple)):
             _build_int_array_el(arg_name, method_el, kv)
+        elif isinstance(kv, dict):
+            el = method_el.add_child(arg_name)
+            for k, v in kv.items():
+                if isinstance(v, (list, tuple)):
+                    _build_int_array_el(k, el, v)
+                else:
+                    el.marshall(k, v)
         else:
             method_el.marshall(arg_name, kv)
 

Reply via email to