Switch jobs over to use a bufferevent.

This commit is contained in:
Nicholas Marriott
2009-11-04 21:04:43 +00:00
parent ea8c8c5f33
commit 4d6091379b
7 changed files with 81 additions and 132 deletions

12
tmux.h
View File

@ -661,16 +661,14 @@ struct job {
struct client *client;
int fd;
struct event event;
struct buffer *out;
struct bufferevent *event;
void (*callbackfn)(struct job *);
void (*freefn)(void *);
void *data;
int flags;
#define JOB_DONE 0x1
#define JOB_PERSIST 0x2 /* don't free after callback */
#define JOB_PERSIST 0x1 /* don't free after callback */
RB_ENTRY(job) entry;
SLIST_ENTRY(job) lentry;
@ -1306,6 +1304,7 @@ struct job *job_add(struct jobs *, int, struct client *,
void job_remove(struct jobs *, struct job *);
void job_free(struct job *);
int job_run(struct job *);
void job_died(struct job *, int);
void job_kill(struct job *);
/* environ.c */
@ -1589,11 +1588,6 @@ void server_client_prepare(void);
void server_client_callback(int, short, void *);
void server_client_loop(void);
/* server-job.c */
void server_job_prepare(void);
void server_job_callback(int, short, void *);
void server_job_loop(void);
/* server-window.c */
void server_window_prepare(void);
void server_window_callback(int, short, void *);