On 07/01/2015 02:21 PM, Markus Armbruster wrote: > qapi-event.py breaks when you ask for a funny prefix like '@'. > Protect it.
Only possible from the command line (not triggered by our makefiles); but doesn't hurt. > > Signed-off-by: Markus Armbruster <arm...@redhat.com> > --- > scripts/qapi.py | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/scripts/qapi.py b/scripts/qapi.py > index 2bbc8ff..ea94ce5 100644 > --- a/scripts/qapi.py > +++ b/scripts/qapi.py > @@ -1003,6 +1003,12 @@ def parse_command_line(extra_options = "", > extra_long_options = []): > for oa in opts: > o, a = oa > if o in ("-p", "--prefix"): > + match = re.match('([A-Za-z_.-][A-Za-z0-9_.-]*)?', a) I can understand allowing a leading _, but why bother allowing a leading '.' or '-'? Those will get normalized to _, but in all honesty, no one should ever be doing that. I'd be just as happy with the shorter: match = re.match('([A-Za-z_][A-Za-z0-9_.-]*)?', a) > + if match.end() != len(a): > + print >>sys.stderr, \ > + "%s: 'funny character '%s' in argument of -prefix" \ 'qemu' is unusual for accepting -single-dash-long-opts; I don't think python getopts does the same by default. Please spell this error message --prefix. > + % (sys.argv[0], a[match.end()]) > + sys.exit(1) > prefix = a > elif o in ("-o", "--output-dir"): > output_dir = a + "/" > With the second spelling fix, and optionally with the shorter regex, Reviewed-by: Eric Blake <ebl...@redhat.com> -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature