]> git.sur5r.net Git - bacula/bacula/commitdiff
Cleanup new timeout code for bconsole
authorEric Bollengier <eric@eb.homelinux.org>
Fri, 2 Oct 2009 07:36:40 +0000 (09:36 +0200)
committerEric Bollengier <eric@eb.homelinux.org>
Fri, 2 Oct 2009 13:08:13 +0000 (15:08 +0200)
bacula/src/console/console.c
bacula/src/lib/btimers.c

index 921675dcafa82b819332cfd5a8efbf3fca2ddc49..e7cdf0fd53ec3b352167a58098ba6e108248690d 100644 (file)
@@ -229,7 +229,7 @@ static void read_and_process_input(FILE *input, BSOCK *UA_sock)
    bool at_prompt = false;
    int tty_input = isatty(fileno(input));
    int stat;
-   btimer_t *tid;
+   btimer_t *tid=NULL;
 
    for ( ;; ) {
       if (at_prompt) {                /* don't prompt multiple times */
@@ -265,9 +265,9 @@ static void read_and_process_input(FILE *input, BSOCK *UA_sock)
          break;                       /* error or interrupt */
       } else if (stat == 0) {         /* timeout */
          if (strcmp(prompt, "*") == 0) {
-            if (timeout) tid = start_bsock_timer(UA_sock, timeout);
+            tid = start_bsock_timer(UA_sock, timeout);
             bnet_fsend(UA_sock, ".messages");
-            if (timeout) stop_bsock_timer(tid);
+            stop_bsock_timer(tid);
          } else {
             continue;
          }
@@ -281,17 +281,17 @@ static void read_and_process_input(FILE *input, BSOCK *UA_sock)
             }
             continue;
          }
-         if (timeout) tid = start_bsock_timer(UA_sock, timeout);
+         tid = start_bsock_timer(UA_sock, timeout);
          if (!bnet_send(UA_sock)) {   /* send command */
-            if (timeout) stop_bsock_timer(tid);
+            stop_bsock_timer(tid);
             break;                    /* error */
          }
-         if (timeout) stop_bsock_timer(tid);
+         stop_bsock_timer(tid);
       }
       if (strcmp(UA_sock->msg, ".quit") == 0 || strcmp(UA_sock->msg, ".exit") == 0) {
          break;
       }
-      if (timeout) tid = start_bsock_timer(UA_sock, timeout);
+      tid = start_bsock_timer(UA_sock, timeout);
       while ((stat = bnet_recv(UA_sock)) >= 0) {
          if (at_prompt) {
             if (!stop) {
@@ -304,7 +304,7 @@ static void read_and_process_input(FILE *input, BSOCK *UA_sock)
             sendit(UA_sock->msg);
          }
       }
-      if (timeout) stop_bsock_timer(tid);
+      stop_bsock_timer(tid);
       if (usrbrk() > 1) {
          break;
       } else {
index 3094a6385ea6b5b7d22ddb970b2e6b9ef72ffff5..5f8a416efe3f0e43e03393e67c80fe85542ae33c 100644 (file)
@@ -166,6 +166,9 @@ btimer_t *start_thread_timer(JCR *jcr, pthread_t tid, uint32_t wait)
 btimer_t *start_bsock_timer(BSOCK *bsock, uint32_t wait)
 {
    btimer_t *wid;
+   if (wait <= 0) {                 /* wait should be > 0 */
+      return NULL;
+   }
    wid = btimer_start_common(wait);
    if (wid == NULL) {
       return NULL;