New event: EVENT_NEW (received from a new process)
diff --git a/process_event.c b/process_event.c
index 18f2a0e..5346be0 100644
--- a/process_event.c
+++ b/process_event.c
@@ -27,10 +27,10 @@
 static void process_arch_syscall(Event *event);
 static void process_sysret(Event *event);
 static void process_arch_sysret(Event *event);
-static void process_fork(Event *event);
 static void process_clone(Event *event);
 static void process_exec(Event *event);
 static void process_breakpoint(Event *event);
+static void process_new(Event *event);
 static void remove_proc(Process *proc);
 
 static void callstack_push_syscall(Process *proc, int sysnum);
@@ -106,7 +106,7 @@
 
 void
 process_event(Event *event) {
-	switch (event->thing) {
+	switch (event->type) {
 	case EVENT_NONE:
 		debug(1, "event: none");
 		return;
@@ -150,10 +150,6 @@
 				event->e_un.sysnum);
 		process_arch_sysret(event);
 		return;
-	case EVENT_FORK:
-		debug(1, "event: fork (%u)", event->e_un.newpid);
-		process_fork(event);
-		return;
 	case EVENT_CLONE:
 		debug(1, "event: clone (%u)", event->e_un.newpid);
 		process_clone(event);
@@ -166,6 +162,10 @@
 		debug(1, "event: breakpoint");
 		process_breakpoint(event);
 		return;
+	case EVENT_NEW:
+		debug(1, "event: new process");
+		process_new(event);
+		return;
 	default:
 		fprintf(stderr, "Error! unknown event?\n");
 		exit(1);
@@ -241,17 +241,16 @@
 }
 
 static void
-process_fork(Event * event) {
-	output_line(event->proc, "--- fork() = %u ---",
+process_clone(Event * event) {
+	output_line(event->proc, "--- clone() = %u ---",
 			event->e_un.newpid);
 	continue_process(event->proc->pid);
 }
 
 static void
-process_clone(Event * event) {
-	output_line(event->proc, "--- clone() = %u ---",
+process_new(Event * event) {
+	output_line(NULL, "--- new child = %u ---",
 			event->e_un.newpid);
-	abort();
 }
 
 static void