summaryrefslogtreecommitdiff
path: root/src/pkg/runtime/os_plan9_386.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/pkg/runtime/os_plan9_386.c')
-rw-r--r--src/pkg/runtime/os_plan9_386.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/pkg/runtime/os_plan9_386.c b/src/pkg/runtime/os_plan9_386.c
index 3396e44e7..0844d726b 100644
--- a/src/pkg/runtime/os_plan9_386.c
+++ b/src/pkg/runtime/os_plan9_386.c
@@ -32,7 +32,7 @@ runtime·sighandler(void *v, int8 *s, G *gp)
Ureg *ureg;
uintptr *sp;
SigTab *sig, *nsig;
- int32 len, i;
+ intgo len, i;
if(!s)
return NCONT;
@@ -88,6 +88,8 @@ runtime·sighandler(void *v, int8 *s, G *gp)
return NDFLT;
Throw:
+ m->throwing = 1;
+ m->caughtsig = gp;
runtime·startpanic();
runtime·printf("%s\n", s);
@@ -95,7 +97,7 @@ Throw:
runtime·printf("\n");
if(runtime·gotraceback(&crash)) {
- runtime·traceback((void*)ureg->pc, (void*)ureg->sp, 0, gp);
+ runtime·traceback(ureg->pc, ureg->sp, 0, gp);
runtime·tracebackothers(gp);
runtime·dumpregs(ureg);
}