--- Begin Message ---
diff -ruNp old/kernel/break.c new/kernel/break.c
--- old/kernel/break.c  2004-04-14 08:40:36.000000000 +0000
+++ new/kernel/break.c  2004-04-24 11:55:44.000000000 +0000
@@ -53,13 +53,13 @@ unsigned char ctrl_break_pressed(void)
 
 unsigned char check_handle_break(struct dhdr FAR **pdev)
 {
-  unsigned char c = CTL_C;
-  if (!ctrl_break_pressed())
-    c = (unsigned char)ndread(&syscon);
-  if (c != CTL_C && *pdev != syscon)
-    c = (unsigned char)ndread(pdev);
-  if (c == CTL_C)
+  unsigned char c;
+  if (ctrl_break_pressed() ||
+                         (c = (unsigned char)ndread(&syscon)) == CTL_C ||
+      *pdev != syscon && (c = (unsigned char)ndread(pdev))    == CTL_C)
+  {
     handle_break(pdev, -1);
+  }
   return c;
 }
 
@@ -90,4 +90,3 @@ void handle_break(struct dhdr FAR **pdev
 
   spawn_int23();                /* invoke user INT-23 and never come back */
 }
-




-------------------------------------------------------
This SF.Net email is sponsored by Sleepycat Software
Learn developer strategies Cisco, Motorola, Ericsson & Lucent use to deliver
higher performing products faster, at low TCO.
http://www.sleepycat.com/telcomwpreg.php?From=osdnemail3
_______________________________________________
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

--- End Message ---

Reply via email to