From: José Fonseca Date: Mon, 16 Apr 2012 09:59:25 +0000 (+0100) Subject: tracediff2: Handle variations in number of arguments. X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=4efac8e26fe0c28d903ce8c9a257f8fd2e39c2a1;p=apitrace tracediff2: Handle variations in number of arguments. --- diff --git a/scripts/tracediff2.py b/scripts/tracediff2.py index 3872071..0f59d87 100755 --- a/scripts/tracediff2.py +++ b/scripts/tracediff2.py @@ -166,16 +166,24 @@ class SDiffer: a_call = self.a[alo + i] b_call = self.b[blo + i] assert a_call.functionName == b_call.functionName - assert len(a_call.args) == len(b_call.args) self.dumpCallNos(a_call.no, b_call.no) self.highlighter.bold(True) self.highlighter.write(b_call.functionName) self.highlighter.bold(False) self.highlighter.write('(') sep = '' - for j in xrange(len(b_call.args)): + numArgs = max(len(a_call.args), len(b_call.args)) + for j in xrange(numArgs): self.highlighter.write(sep) - self.replace_value(a_call.args[j], b_call.args[j]) + try: + a_arg = a_call.args[j] + except IndexError: + pass + try: + b_arg = b_call.args[j] + except IndexError: + pass + self.replace_value(a_arg, b_arg) sep = ', ' self.highlighter.write(')') if a_call.ret is not None or b_call.ret is not None: