From 202cf094ebcbea4dec43e57ae29a3bbe808807e4 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Mon, 7 Mar 2011 20:42:36 +0000 Subject: [main] Remove shell prompt when using an embedded image Signed-off-by: Michael Brown --- src/core/main.c | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'src/core') diff --git a/src/core/main.c b/src/core/main.c index 7d411d6a5..aac27e9ba 100644 --- a/src/core/main.c +++ b/src/core/main.c @@ -78,24 +78,23 @@ __asmcall int main ( void ) { printf ( " %s", feature->name ); printf ( "\n" ); - /* Prompt for shell */ - if ( shell_banner() ) { - /* User wants shell; just give them a shell */ - shell(); + /* Boot system */ + if ( ( image = first_image() ) != NULL ) { + /* We have an embedded image; execute it */ + image_exec ( image ); } else { - /* User doesn't want shell; load and execute the first - * image, or autoboot() if we have no images. If - * booting fails for any reason, offer a second chance - * to enter the shell for diagnostics. - */ - if ( ( image = first_image() ) != NULL ) { - image_exec ( image ); + /* Prompt for shell */ + if ( shell_banner() ) { + /* User wants shell; just give them a shell */ + shell(); } else { + /* Try booting. If booting fails, offer the + * user another chance to enter the shell. + */ autoboot(); + if ( shell_banner() ) + shell(); } - - if ( shell_banner() ) - shell(); } shutdown_exit(); -- cgit v1.2.3-55-g7522