Commit Diff


commit - 399ab50aa45b7501891654b72ce7e2c8b3995ec3
commit + 2b3b1e8984849541761d0272ba1ad376f5f5a82b
blob - b886e30b33bcf08c54fc36c6435c034fee921636
blob + d79bd1a9a29416ae25f9173bbc89cef36c642e68
--- src/libthread/thread.c
+++ src/libthread/thread.c
@@ -121,9 +121,9 @@ threadalloc(void (*fn)(void*), void *arg, uint stack)
 	t->context.uc.uc_stack.ss_size = t->stksize-64;
 #ifdef __sun__		/* sigh */
 	/* can avoid this with __MAKECONTEXT_V2_SOURCE but only on SunOS 5.9 */
-	t->context.uc_stack.ss_sp = 
-		(char*)t->context.uc_stack.ss_sp
-		+t->context.uc_stack.ss_size;
+	t->context.uc.uc_stack.ss_sp = 
+		(char*)t->context.uc.uc_stack.ss_sp
+		+t->context.uc.uc_stack.ss_size;
 #endif
 	makecontext(&t->context.uc, (void(*)())threadstart, 1, t);