diff --git a/lldb/source/Host/common/Host.cpp b/lldb/source/Host/common/Host.cpp index 00ba8468c7cdd3fae7578df471ed68054b19c08c..16e1ea9459a40010cd6b707e2807934b2c3e4df1 100644 --- a/lldb/source/Host/common/Host.cpp +++ b/lldb/source/Host/common/Host.cpp @@ -640,15 +640,16 @@ Host::ListProcessesMatchingName (const char *name, StringList &matches, std::vec #if defined (__APPLE__) int num_pids; int size_of_pids; - int *pid_list; + std::vector pid_list; size_of_pids = proc_listpids(PROC_ALL_PIDS, 0, NULL, 0); if (size_of_pids == -1) return 0; num_pids = size_of_pids/sizeof(int); - pid_list = (int *) malloc(size_of_pids); - size_of_pids = proc_listpids(PROC_ALL_PIDS, 0, pid_list, size_of_pids); + + pid_list.resize (size_of_pids); + size_of_pids = proc_listpids(PROC_ALL_PIDS, 0, &pid_list[0], size_of_pids); if (size_of_pids == -1) return 0;