diff options
Diffstat (limited to 'tools/perf/util/session.c')
-rw-r--r-- | tools/perf/util/session.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index 534a8770ee7f..09836a537fc5 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c | |||
@@ -51,7 +51,7 @@ out_close: | |||
51 | struct perf_session *perf_session__new(const char *filename, int mode, | 51 | struct perf_session *perf_session__new(const char *filename, int mode, |
52 | bool force) | 52 | bool force) |
53 | { | 53 | { |
54 | size_t len = strlen(filename) + 1; | 54 | size_t len = filename ? strlen(filename) + 1 : 0; |
55 | struct perf_session *self = zalloc(sizeof(*self) + len); | 55 | struct perf_session *self = zalloc(sizeof(*self) + len); |
56 | 56 | ||
57 | if (self == NULL) | 57 | if (self == NULL) |
@@ -61,6 +61,8 @@ struct perf_session *perf_session__new(const char *filename, int mode, | |||
61 | goto out_delete; | 61 | goto out_delete; |
62 | 62 | ||
63 | memcpy(self->filename, filename, len); | 63 | memcpy(self->filename, filename, len); |
64 | self->threads = RB_ROOT; | ||
65 | self->last_match = NULL; | ||
64 | self->mmap_window = 32; | 66 | self->mmap_window = 32; |
65 | self->cwd = NULL; | 67 | self->cwd = NULL; |
66 | self->cwdlen = 0; | 68 | self->cwdlen = 0; |