X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=gui_common.c;h=6bd54081ba1fbd5f45d0249419e9ec752c04041e;hp=87676986719c326340d1612ec85763349d2225be;hb=b76e950a38435a10d7d85a1c0ea95fa7c2917a96;hpb=75529c7cb29903302931db92f04cb3b510eb6317 diff --git a/gui_common.c b/gui_common.c index 87676986..6bd54081 100644 --- a/gui_common.c +++ b/gui_common.c @@ -1,8 +1,18 @@ -#include "para.h" -#include "fd.h" +/* + * Copyright (C) 2006-2007 Andre Noll + * + * Licensed under the GPL v2. For licencing details see COPYING. + */ + +/** \file gui_common.c Functions used by the guis of paraslash. */ -extern const char *status_item_list[NUM_STAT_ITEMS]; +#include +#include + +#include "para.h" +#include "string.h" +#include "fd.h" int para_open_audiod_pipe(char *cmd) { @@ -11,16 +21,16 @@ int para_open_audiod_pipe(char *cmd) int ret = para_exec_cmdline_pid(&pid, cmd, fds); if (ret < 0) return ret; - ret = mark_fd_nonblock(fds[1]); + ret = mark_fd_nonblocking(fds[1]); if (ret > 0) return fds[1]; close(fds[1]); return ret; } -int read_audiod_pipe(int fd, void (*line_handler)(char *) ) +int read_audiod_pipe(int fd, line_handler_t *line_handler) { - static char buf[STRINGSIZE]; + static char buf[4096]; const ssize_t bufsize = sizeof(buf) - 1; static ssize_t loaded; ssize_t ret; @@ -31,7 +41,7 @@ int read_audiod_pipe(int fd, void (*line_handler)(char *) ) if (ret > 0) { loaded += ret; buf[loaded] = '\0'; - loaded = for_each_line(buf, loaded, line_handler); + loaded = for_each_line(buf, loaded, line_handler, NULL); } return ret; }