diff options
author | Philippe Mathieu-Daudé <philmd@redhat.com> | 2019-09-16 11:51:21 +0200 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2019-09-18 10:20:15 +0100 |
commit | 9f7ad79c16ede0da01902b18fb32929cfbd20f87 (patch) | |
tree | 7df1d72d711643a8e441e8a4200f5a4a5b9bcf25 /scripts/tracetool | |
parent | 794dcb54b3fc3cb91d1eeb34216be3177400d6a2 (diff) | |
download | qemu-9f7ad79c16ede0da01902b18fb32929cfbd20f87.zip qemu-9f7ad79c16ede0da01902b18fb32929cfbd20f87.tar.gz qemu-9f7ad79c16ede0da01902b18fb32929cfbd20f87.tar.bz2 |
trace: Forbid event format ending with newline character
Event format ending with newlines confuse the trace reports.
Forbid them.
Add a check to refuse new format added with trailing newline:
$ make
[...]
GEN hw/misc/trace.h
Traceback (most recent call last):
File "scripts/tracetool.py", line 152, in <module>
main(sys.argv)
File "scripts/tracetool.py", line 143, in main
events.extend(tracetool.read_events(fh, arg))
File "scripts/tracetool/__init__.py", line 367, in read_events
event = Event.build(line)
File "scripts/tracetool/__init__.py", line 281, in build
raise ValueError("Event format can not end with a newline character")
ValueError: Error at hw/misc/trace-events:121: Event format can not end with a newline character
Reviewed-by: John Snow <jsnow@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20190916095121.29506-3-philmd@redhat.com
Message-Id: <20190916095121.29506-3-philmd@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'scripts/tracetool')
-rw-r--r-- | scripts/tracetool/__init__.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/scripts/tracetool/__init__.py b/scripts/tracetool/__init__.py index 6fca674..04279fa 100644 --- a/scripts/tracetool/__init__.py +++ b/scripts/tracetool/__init__.py @@ -277,6 +277,9 @@ class Event(object): if fmt.find("%m") != -1 or fmt_trans.find("%m") != -1: raise ValueError("Event format '%m' is forbidden, pass the error " "as an explicit trace argument") + if fmt.endswith(r'\n"'): + raise ValueError("Event format must not end with a newline " + "character") if len(fmt_trans) > 0: fmt = [fmt_trans, fmt] |