[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Lost] [Patch] Bugfix für _exit und waitpid



Dieser Patch behebt einen bösen Bug in _exit. Ich weiss ja nicht, welcher 
Idiot diesen Code geschrieben hat... *g*
Weiter wird noch dafür gesorgt, dass Prozesse die wegsterben einen Status -1 
zurückgeben.
Index: src/modules/lib/stdlibc/exit.c
===================================================================
--- src/modules/lib/stdlibc/exit.c	(Revision 703)
+++ src/modules/lib/stdlibc/exit.c	(Arbeitskopie)
@@ -108,7 +108,7 @@
     char* msg = "CHL_EXIT    ";
     int* status = (int*) (msg + 8);
     *status = result;
-    send_message(get_parent_pid(0), 512, 0, strlen(msg), msg);
+    send_message(get_parent_pid(0), 512, 0, 12, msg);
 
     init_process_exit(result);
     destroy_process();

Index: src/modules/lib/posix/wait.c
===================================================================
--- src/modules/lib/posix/wait.c	(Revision 710)
+++ src/modules/lib/posix/wait.c	(Arbeitskopie)
@@ -99,6 +99,7 @@
 
     wait_child->pid = pid;
     wait_child->running = TRUE;
+    wait_child->status = -1;
     list_push(wait_list, wait_child);
     
     v();