Fix control-c handing in CONFIG_CMDLINE_EDITING
authorStefan Roese <sr@denx.de>
Mon, 7 Aug 2006 13:08:44 +0000 (15:08 +0200)
committerStefan Roese <sr@denx.de>
Mon, 7 Aug 2006 13:08:44 +0000 (15:08 +0200)
Properly pass break code back from readline.
Patch by Roger Blofeld, 31 Jul 2006

CHANGELOG
common/main.c

index 5ef76d220620019f87bb0a8546127b5df0ccaae4..e451b517a4a86803478b0509a9429021e3351cde 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
 Changes since U-Boot 1.1.4:
 ======================================================================
 
+* Fix control-c handing in CONFIG_CMDLINE_EDITING
+  Properly pass break code back from readline.
+  Patch by Roger Blofeld, 31 Jul 2006
+
 * Add commandline history support to all AMCC eval boards
   Patch by Stefan Roese, 07 Aug 2006
 
index 3788bd5e4a18f94065a400ac8895760e0c33a473..13d12a430807ba94e1607a3590eddc2a9b0020e2 100644 (file)
@@ -937,6 +937,7 @@ int readline (const char *const prompt)
 #ifdef CONFIG_CMDLINE_EDITING
        char *p = console_buffer;
        unsigned int len=MAX_CMDBUF_SIZE;
+       int rc;
        static int initted = 0;
 
        if (!initted) {
@@ -946,8 +947,8 @@ int readline (const char *const prompt)
 
        puts (prompt);
 
-       cread_line(p, &len);
-       return len;
+       rc = cread_line(p, &len);
+       return rc < 0 ? rc : len;
 #else
        char   *p = console_buffer;
        int     n = 0;                          /* buffer index         */