diff options
author | Barrucadu <mike@barrucadu.co.uk> | 2009-04-23 23:15:22 +0100 |
---|---|---|
committer | Barrucadu <mike@barrucadu.co.uk> | 2009-04-23 23:15:22 +0100 |
commit | 53b97bbd0a988380ec72a03af48442f9f688fa4b (patch) | |
tree | 7ca69c6fba86b3cd1f2feedfdff6975605884ef8 | |
parent | 96235f31822cf83b344ded4fa87a0b09916087c2 (diff) |
Added FIFO thread. Currently doesn't work.
-rwxr-xr-x | uzbl | bin | 23180 -> 0 bytes | |||
-rw-r--r-- | uzbl.c | 17 |
2 files changed, 10 insertions, 7 deletions
Binary files differ @@ -193,12 +193,13 @@ static bool parse_command(char *command) return output; } -static void control_fifo(void *threadid) +static void control_fifo() { - char *cmd; + char *cmd = (char *)malloc(1024); int num, fd; char *fifoname = "/tmp/uzbl"; + umask(0); mknod(fifoname, S_IFIFO | 0666 , 0); /* Do some stuff to work with multiple instances later foo-$PID or something */ printf("Opened control fifo in %s\n", fifoname); @@ -213,7 +214,7 @@ static void control_fifo(void *threadid) { cmd[num] = '\0'; if(! parse_command(cmd)) - printf("Unknown command \"%s\"", cmd); + printf("Unknown command \"%s\".\n", cmd); } } num = 1; @@ -250,10 +251,12 @@ int main (int argc, char* argv[]) gtk_widget_grab_focus (GTK_WIDGET (web_view)); gtk_widget_show_all (main_window); - pthread_t controlthread; - pthread_create(&controlthread, NULL, control_fifo, NULL); + pthread_t control_thread; + int ret; + + ret = pthread_create(&control_thread, NULL, control_fifo, (void*) NULL); gtk_main (); - - pthread_exit(NULL); + + pthread_join(control_thread, NULL); return 0; } |