diff options
Diffstat (limited to 'libguile/simpos.c')
-rw-r--r-- | libguile/simpos.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libguile/simpos.c b/libguile/simpos.c index d1fcd81c8..3d5d0feb7 100644 --- a/libguile/simpos.c +++ b/libguile/simpos.c @@ -127,12 +127,12 @@ SCM_DEFINE (scm_system_star, "system*", 0, 0, 1, int pid; char **execargv; - scm_frame_begin (0); + scm_dynwind_begin (0); /* allocate before fork */ execargv = scm_i_allocate_string_pointers (args); - scm_frame_unwind_handler (free_string_pointers, execargv, - SCM_F_WIND_EXPLICITLY); + scm_dynwind_unwind_handler (free_string_pointers, execargv, + SCM_F_WIND_EXPLICITLY); /* make sure the child can't kill us (as per normal system call) */ sig_ign = scm_from_long ((unsigned long) SIG_IGN); @@ -148,7 +148,7 @@ SCM_DEFINE (scm_system_star, "system*", 0, 0, 1, execvp (execargv[0], execargv); SCM_SYSERROR; /* not reached. */ - scm_frame_end (); + scm_dynwind_end (); return SCM_BOOL_F; } else @@ -165,7 +165,7 @@ SCM_DEFINE (scm_system_star, "system*", 0, 0, 1, scm_sigaction (sigint, SCM_CAR (oldint), SCM_CDR (oldint)); scm_sigaction (sigquit, SCM_CAR (oldquit), SCM_CDR (oldquit)); - scm_frame_end (); + scm_dynwind_end (); return scm_from_int (status); } } |