Revision 4e679f11 lib/rpc.py
b/lib/rpc.py | ||
---|---|---|
638 | 638 |
result = c.getresult() |
639 | 639 |
new_result = {} |
640 | 640 |
for node_name in result: |
641 |
nr = [] |
|
642 | 641 |
if result[node_name]: |
643 |
for data in result[node_name]: |
|
644 |
if data: |
|
645 |
if isinstance(data, dict): |
|
646 |
nr.append(objects.OS.FromDict(data)) |
|
647 |
elif isinstance(data, tuple) and len(data) == 3: |
|
648 |
nr.append(errors.InvalidOS(data[0], data[1], data[2])) |
|
649 |
else: |
|
650 |
raise errors.ProgrammerError("Invalid data from" |
|
651 |
" xcserver.os_diagnose") |
|
642 |
nr = [objects.OS.FromDict(oss) for oss in result[node_name]] |
|
643 |
else: |
|
644 |
nr = [] |
|
652 | 645 |
new_result[node_name] = nr |
653 | 646 |
return new_result |
654 | 647 |
|
Also available in: Unified diff