summaryrefslogtreecommitdiffstats
path: root/openstack/common
diff options
context:
space:
mode:
authorLance Bragstad <ldbragst@us.ibm.com>2013-08-06 20:27:18 +0000
committerLance Bragstad <ldbragst@us.ibm.com>2013-08-10 03:26:53 +0000
commit61c4cdec304d79f43c8a549c2543c939492c4812 (patch)
tree38b13670816930854bd8baa2dee4790cd9ad2639 /openstack/common
parentde0427f8f886f6be4c0777cfaccc336bef6aee7a (diff)
downloadoslo-61c4cdec304d79f43c8a549c2543c939492c4812.tar.gz
oslo-61c4cdec304d79f43c8a549c2543c939492c4812.tar.xz
oslo-61c4cdec304d79f43c8a549c2543c939492c4812.zip
Ensure context type is handled when using to_dict
Handle the case where the context passed into def pack_context() is a dictionary. If a dictionary is passed in, we don't need to call to_dict before updating the msg. fixes bug 1208971 Change-Id: I2ce0b28f97634e717868e0ee5525189338d4981c
Diffstat (limited to 'openstack/common')
-rw-r--r--openstack/common/rpc/amqp.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/openstack/common/rpc/amqp.py b/openstack/common/rpc/amqp.py
index 1afd2ab..38f2515 100644
--- a/openstack/common/rpc/amqp.py
+++ b/openstack/common/rpc/amqp.py
@@ -300,8 +300,13 @@ def pack_context(msg, context):
for args at some point.
"""
- context_d = dict([('_context_%s' % key, value)
- for (key, value) in context.to_dict().iteritems()])
+ if isinstance(context, dict):
+ context_d = dict([('_context_%s' % key, value)
+ for (key, value) in context.iteritems()])
+ else:
+ context_d = dict([('_context_%s' % key, value)
+ for (key, value) in context.to_dict().iteritems()])
+
msg.update(context_d)