From: Jeremy Kerr Date: Tue, 24 Nov 2009 22:19:29 +0000 (+1100) Subject: pwclient: fallback to patch_get_by_hash X-Git-Url: https://git.ozlabs.org/?p=patchwork;a=commitdiff_plain;h=73ec099a07e095016c56e49e050e20ed7056cb35 pwclient: fallback to patch_get_by_hash patch_get_by_project_hash isn't in older xmlrpc interfaces, so fall back to patch_get_by_hash if we see an xmlrpc fault when calling this function. Reported-by: Carl-Daniel Hailfinger Signed-off-by: Jeremy Kerr --- diff --git a/apps/patchwork/bin/pwclient b/apps/patchwork/bin/pwclient index 75fc6ff..b0bd1d1 100755 --- a/apps/patchwork/bin/pwclient +++ b/apps/patchwork/bin/pwclient @@ -286,7 +286,13 @@ def action_update_patch(rpc, patch_id, state = None, commit = None): sys.stderr.write("Patch not updated\n") def patch_id_from_hash(rpc, project, hash): - patch = rpc.patch_get_by_project_hash(project, hash) + try: + patch = rpc.patch_get_by_project_hash(project, hash) + except xmlrpclib.Fault: + # the server may not have the newer patch_get_by_project_hash function, + # so fall back to hash-only. + patch = rpc.patch_get_by_hash(hash) + if patch == {}: return None