return r;
}
+#if ENABLE_FEATURE_PREFER_APPLETS
void save_nofork_data(struct nofork_save_area *save)
{
save->current_applet = current_applet;
save_nofork_data(&old);
return run_nofork_applet_prime(&old, a, argv);
}
+#endif /* FEATURE_PREFER_APPLETS */
int spawn_and_wait(char **argv)
{
{ NULL, NULL, NULL }
};
+#if ENABLE_FEATURE_SH_STANDALONE
+struct nofork_save_area nofork_save;
+#endif
+
#if ENABLE_HUSH_JOB
/* move to libbb? */
static struct pipe *toplevel_list;
static sigjmp_buf toplevel_jb;
smallint ctrl_z_flag;
-#if ENABLE_FEATURE_SH_STANDALONE
-struct nofork_save_area nofork_save;
-#endif
-
static void handler_ctrl_c(int sig)
{
debug_printf_jobs("got sig %d\n", sig);
/* If there is data waiting, eat it up */
if (i->p && *i->p) {
+#if ENABLE_HUSH_INTERACTIVE
take_cached:
+#endif
ch = *i->p++;
if (i->eof_flag && !*i->p)
ch = EOF;
i->promptmode = 2;
i->__promptme = 0;
goto take_cached;
- } else
-#endif
- {
- ch = fgetc(i->file);
}
+#endif
+ ch = fgetc(i->file);
}
debug_printf("file_get: got a '%c' %d\n", ch, ch);
#if ENABLE_HUSH_INTERACTIVE