Messages in this thread | | | Date | Wed, 18 Nov 2015 00:57:14 +0100 (CET) | From | John Kacur <> | Subject | Re: [PATCH] trace-cmd: record crashes if -f is used before -e event. |
| |
On Mon, 20 Jul 2015, Daniel Bristot de Oliveira wrote:
> The trace-cmd record command is crashing if a -f filter is used before > a -e event. > > The usage a -f before a -e is a command line error, and trace-cmd > record detects this error by checking if the last_event pointer is NULL. > > However, the last_event is not initialized as NULL and this command line > error is not detected. Then, the last_event is used to save the filter > options and this causes a segmentation fault because last_event was not > initialized yet. > > This problem is fixed by initializing last_event as NULL. > > How-to reproduce: > # trace-cmd record -f foo > Segmentation fault > > Expected output: > # trace-cmd record -f foo > filter must come after event > > Signed-off-by: Daniel Bristot de Oliveira <bristot@redhat.com> > --- > trace-record.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/trace-record.c b/trace-record.c > index 3e5def2..45826b6 100644 > --- a/trace-record.c > +++ b/trace-record.c > @@ -2686,7 +2686,7 @@ void trace_record (int argc, char **argv) > const char *output = NULL; > const char *option; > struct event_list *event; > - struct event_list *last_event; > + struct event_list *last_event = NULL; > struct tracecmd_event_list *list; > struct buffer_instance *instance = &top_instance; > enum trace_type type; > -- > 2.1.0 > Tested-by: John Kacur <jkacur@redhat.com>
Works well, please apply
| |