Kill TASK_UNREGISTERED error code.
[paraslash.git] / grab_client.c
index 5971f115e7e11d077e825cc744d97abf2f6cbfd5..c410b3b934f398a6eb6bbd480f5d7e8f31535d62 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2006-2010 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2011 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -101,11 +101,8 @@ static void gc_pre_select(struct sched *s, struct task *t)
 
        if (ret == 0)
                return;
-       if (ret < 0) {
-               s->timeout.tv_sec = 0;
-               s->timeout.tv_usec = 0;
-               return;
-       }
+       if (ret < 0)
+               sched_min_delay(s);
        para_fd_set(gc->fd, &s->wfds, &s->max_fileno);
 }
 
@@ -159,7 +156,7 @@ void activate_grab_clients(void)
        struct grab_client *gc, *tmp;
 
        list_for_each_entry_safe(gc, tmp, &inactive_grab_client_list, node) {
-               if (gc->task.error == -E_TASK_UNREGISTERED) {
+               if (gc->task.error < 0) {
                        list_del(&gc->node);
                        free(gc);
                        continue;