projects
/
paraslash.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
audiod: kill close_writer()
[paraslash.git]
/
gui.c
diff --git
a/gui.c
b/gui.c
index 7b10992c8d0b7282a3854b473ed38cebbca83d67..49f8f46f523742eab96346103830b5dadc9b3416 100644
(file)
--- a/
gui.c
+++ b/
gui.c
@@
-23,7
+23,11
@@
#include <curses.h>
#include "ringbuffer.h"
#include "string.h"
#include <curses.h>
#include "ringbuffer.h"
#include "string.h"
+#include "fd.h"
+#include "error.h"
+/** define the array of error lists needed by para_gui */
+INIT_GUI_ERRLISTS;
extern const char *status_item_list[NUM_STAT_ITEMS];
static char *stat_content[NUM_STAT_ITEMS];
extern const char *status_item_list[NUM_STAT_ITEMS];
static char *stat_content[NUM_STAT_ITEMS];
@@
-882,32
+886,25
@@
repeat:
/* audiod pipe */
if (audiod_pipe < 0)
audiod_pipe = open_audiod_pipe();
/* audiod pipe */
if (audiod_pipe < 0)
audiod_pipe = open_audiod_pipe();
- if (audiod_pipe >= 0) {
- FD_SET(audiod_pipe, &rfds);
- max_fileno = MAX(max_fileno, audiod_pipe);
- }
-
+ if (audiod_pipe >= 0)
+ para_fd_set(audiod_pipe, &rfds, &max_fileno);
/* signal pipe */
/* signal pipe */
- FD_SET(signal_pipe, &rfds);
- max_fileno = MAX(max_fileno, signal_pipe);
+ para_fd_set(signal_pipe, &rfds, &max_fileno);
/* command pipe only for COMMAND_MODE */
/* command pipe only for COMMAND_MODE */
- if (command_pipe >= 0 && mode == COMMAND_MODE) {
- FD_SET(command_pipe, &rfds);
- max_fileno = MAX(max_fileno, command_pipe);
- }
+ if (command_pipe >= 0 && mode == COMMAND_MODE)
+ para_fd_set(command_pipe, &rfds, &max_fileno);
if (curses_active)
if (curses_active)
-
FD_SET(STDIN_FILENO, &rfds
);
- ret =
select(max_fileno + 1, &rfds, NULL
, NULL, &tv);
+
para_fd_set(STDIN_FILENO, &rfds, &max_fileno
);
+ ret =
para_select(max_fileno + 1, &rfds
, NULL, &tv);
// PARA_DEBUG_LOG("select returned %d\n", ret);
// PARA_DEBUG_LOG("select returned %d\n", ret);
-
+ if (ret <= 0)
+ goto check_return; /* skip fd checks */
/* signals */
if (FD_ISSET(signal_pipe, &rfds)) {
int sig_nr = para_next_signal();
if (sig_nr > 0)
handle_signal(sig_nr);
}
/* signals */
if (FD_ISSET(signal_pipe, &rfds)) {
int sig_nr = para_next_signal();
if (sig_nr > 0)
handle_signal(sig_nr);
}
- if (ret <= 0)
- goto check_return; /* skip fd checks */
/* read command pipe if ready */
if (command_pipe >= 0 && mode == COMMAND_MODE &&
FD_ISSET(command_pipe, &rfds)) {
/* read command pipe if ready */
if (command_pipe >= 0 && mode == COMMAND_MODE &&
FD_ISSET(command_pipe, &rfds)) {