* addr2line.c (append_obj): clear allocated memory.
* addr2line.c (rb_dump_backtrace_with_lines): free `base_addrs'. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
ddffb9bb9b
commit
b8eb899785
@ -1,3 +1,9 @@
|
||||
Thu Apr 10 15:01:06 2014 NARUSE, Yui <naruse@ruby-lang.org>
|
||||
|
||||
* addr2line.c (append_obj): clear allocated memory.
|
||||
|
||||
* addr2line.c (rb_dump_backtrace_with_lines): free `base_addrs'.
|
||||
|
||||
Thu Apr 10 14:40:18 2014 Koichi Sasada <ko1@atdot.net>
|
||||
|
||||
* gc.c (rb_gc_writebarrier_unprotect_promoted): disable to dump debug
|
||||
|
@ -423,7 +423,7 @@ fill_lines(int num_traces, void **traces, int check_debuglink,
|
||||
|
||||
static void
|
||||
append_obj(obj_info_t **objp) {
|
||||
obj_info_t *newobj = malloc(sizeof(obj_info_t));
|
||||
obj_info_t *newobj = calloc(1, sizeof(obj_info_t));
|
||||
if (*objp) (*objp)->next = newobj;
|
||||
*objp = newobj;
|
||||
}
|
||||
@ -668,7 +668,7 @@ rb_dump_backtrace_with_lines(int num_traces, void **traces)
|
||||
o = obj;
|
||||
obj->path = main_path;
|
||||
fill_lines(num_traces, traces, 1, &obj, lines, -1);
|
||||
for (i=0; o=o->next; i++) {
|
||||
for (i=0; o=o->next; i++) { /* 1 or 2 times */
|
||||
base_addrs[i] = (void *)o->base_addr;
|
||||
}
|
||||
}
|
||||
@ -741,6 +741,7 @@ next_line:
|
||||
free(o);
|
||||
}
|
||||
free(lines);
|
||||
free(base_addrs);
|
||||
}
|
||||
|
||||
/* From FreeBSD's lib/libstand/printf.c */
|
||||
|
Loading…
x
Reference in New Issue
Block a user