The currrent generated API contains *** pointer types with bogus
whitespace in the middle:
<arg name='keys' type='char ** *' info='pointer to a variable to store authorized keys'/>
because the tokenizer only tries to merge 2 distinct '*' together.
This refactors the code to merge an arbitrary number, resulting
in
<arg name='keys' type='char ***' info='pointer to a variable to store authorized keys'/>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
i = i + 3
continue
- j = i + 1
- if j < nline and line[j] in "+-*><=/%&!|":
- self.tokens.append(('op', line[i:j + 1]))
- i = j + 1
- else:
- self.tokens.append(('op', line[i]))
- i = i + 1
+ j = i
+ while (j + 1) < nline and line[j+1] in "+-*><=/%&!|":
+ j = j + 1
+
+ self.tokens.append(('op', line[i:j+1]))
+ i = j + 1
continue
s = i
while i < nline: