diff options
Diffstat (limited to 'src/crash-stack/proc.c')
-rw-r--r-- | src/crash-stack/proc.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/crash-stack/proc.c b/src/crash-stack/proc.c index fd346c6..3c9f44a 100644 --- a/src/crash-stack/proc.c +++ b/src/crash-stack/proc.c @@ -293,6 +293,8 @@ char *get_thread_states(const int *tids, int n) { int i; char *res = calloc(1, n); + if (!res) + return NULL; for (i = 0; i < n; ++i) { int state = proc_state(tids[i]); @@ -382,6 +384,9 @@ static int copy_memory_process_vm_readv(int pid, remote_iov = malloc(sizeof(struct iovec)*n_frames); frame_bytes = malloc(sizeof(ssize_t)*n_frames); + if (!local_iov || !remote_iov || !frame_bytes) + goto process_vm_readv_end; + for (i = 0; i < n_frames; ++i) { local_iov[i].iov_base = frames[i]->data; local_iov[i].iov_len = frames[i]->length; |