[BACK]Return to job.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / tmux

Diff for /src/usr.bin/tmux/job.c between version 1.35 and 1.36

version 1.35, 2015/04/24 22:19:36 version 1.36, 2015/06/17 16:44:49
Line 100 
Line 100 
         close(out[1]);          close(out[1]);
   
         job = xmalloc(sizeof *job);          job = xmalloc(sizeof *job);
           job->state = JOB_RUNNING;
   
         job->cmd = xstrdup(cmd);          job->cmd = xstrdup(cmd);
         job->pid = pid;          job->pid = pid;
         job->status = 0;          job->status = 0;
Line 167 
Line 169 
   
         log_debug("job error %p: %s, pid %ld", job, job->cmd, (long) job->pid);          log_debug("job error %p: %s, pid %ld", job, job->cmd, (long) job->pid);
   
         if (job->pid == -1) {          if (job->state == JOB_DEAD) {
                 if (job->callbackfn != NULL)                  if (job->callbackfn != NULL)
                         job->callbackfn(job);                          job->callbackfn(job);
                 job_free(job);                  job_free(job);
         } else {          } else {
                 bufferevent_disable(job->event, EV_READ);                  bufferevent_disable(job->event, EV_READ);
                 close(job->fd);                  job->state = JOB_CLOSED;
                 job->fd = -1;  
         }          }
 }  }
   
Line 186 
Line 187 
   
         job->status = status;          job->status = status;
   
         if (job->fd == -1) {          if (job->state == JOB_CLOSED) {
                 if (job->callbackfn != NULL)                  if (job->callbackfn != NULL)
                         job->callbackfn(job);                          job->callbackfn(job);
                 job_free(job);                  job_free(job);
         } else          } else {
                 job->pid = -1;                  job->pid = -1;
                   job->state = JOB_DEAD;
           }
 }  }

Legend:
Removed from v.1.35  
changed lines
  Added in v.1.36