summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--mfd/bi_dns.m41
-rw-r--r--mfd/prog.c4
2 files changed, 4 insertions, 1 deletions
diff --git a/mfd/bi_dns.m4 b/mfd/bi_dns.m4
index a3a6ef1..6d071e7 100644
--- a/mfd/bi_dns.m4
+++ b/mfd/bi_dns.m4
@@ -131,6 +131,7 @@ MF_DEFUN(dns_getname, STRING, STRING ipstr)
qsort(names, ncount, sizeof names[0], hostname_cmp);
+ MF_OBSTACK_BEGIN();
for (i = 0; i < ncount; i++) {
if (i > 0)
MF_OBSTACK_1GROW(' ');
diff --git a/mfd/prog.c b/mfd/prog.c
index 17c2464..a2671db 100644
--- a/mfd/prog.c
+++ b/mfd/prog.c
@@ -490,7 +490,9 @@ runtime_stack_trace(eval_environ_t env)
prog_counter_t pc = (prog_counter_t)env->dataseg[base + 2] - 1;
char *name;
struct locus *ploc = NULL, loc;
-
+
+ if (pc < 2)
+ break; /*FIXME*/
if (prog[pc-2] == instr_funcall) {
name = (char*)(env->dataseg + (size_t) prog[pc-1]);
pc -= 2;

Return to:

Send suggestions and report system problems to the System administrator.