mirror of
https://github.com/gryf/gryf-overlay.git
synced 2026-04-13 03:43:31 +02:00
initial import
This commit is contained in:
@@ -0,0 +1 @@
|
||||
MD5 1ccc90254c58a81f87abc43720fe71bf xmms-infopipe-1.3.tar.gz 172599
|
||||
@@ -0,0 +1 @@
|
||||
MD5 1ccc90254c58a81f87abc43720fe71bf xmms-infopipe-1.3.tar.gz 172599
|
||||
89
media-plugins/xmms-infopipe/files/xmms-infopipe-tweaks.patch
Normal file
89
media-plugins/xmms-infopipe/files/xmms-infopipe-tweaks.patch
Normal file
@@ -0,0 +1,89 @@
|
||||
--- xmms-infopipe-1.3.orig/src/infopipe_senddata.c
|
||||
+++ xmms-infopipe-1.3/src/infopipe_senddata.c
|
||||
@@ -5,6 +5,7 @@
|
||||
#include <stdio.h>
|
||||
#include <glib.h>
|
||||
#include <xmms/util.h>
|
||||
+#include <xmms/xmmsctrl.h>
|
||||
#include "infopipe.h"
|
||||
#include "../config.h"
|
||||
|
||||
@@ -14,7 +15,7 @@
|
||||
This will get the XMMS information and print them out to the pipe.
|
||||
*/
|
||||
void blast_info(FILE *pipe) {
|
||||
- gchar *play_status;
|
||||
+ gchar *play_status, *s1, *s2;
|
||||
gint tunes = xmms_remote_get_playlist_length(SESSIONID);
|
||||
gint current = xmms_remote_get_playlist_pos(SESSIONID);
|
||||
|
||||
@@ -81,10 +82,14 @@
|
||||
fprintf(pipe, "Channels: %d\n",nch);
|
||||
|
||||
/* The basicest of the basic information. Title string and file name. */
|
||||
- fprintf(pipe, "Title: %s\n",
|
||||
- xmms_remote_get_playlist_title(SESSIONID,current));
|
||||
- fprintf(pipe, "File: %s\n",
|
||||
- xmms_remote_get_playlist_file(SESSIONID,current));
|
||||
+ s1 = xmms_remote_get_playlist_title(SESSIONID,current);
|
||||
+ s2 = xmms_remote_get_playlist_file(SESSIONID,current);
|
||||
+
|
||||
+ fprintf(pipe, "Title: %s\n", s1);
|
||||
+ fprintf(pipe, "File: %s\n", s2);
|
||||
+
|
||||
+ g_free(s1); /* xmms_remote_get_playlist_* require we call g_free on the returned string */
|
||||
+ g_free(s2); /* xmms_remote_get_playlist_* require we call g_free on the returned string */
|
||||
|
||||
g_free(play_status);
|
||||
}
|
||||
--- xmms-infopipe-1.3.orig/src/infopipe.c
|
||||
+++ xmms-infopipe-1.3/src/infopipe.c
|
||||
@@ -228,16 +228,24 @@
|
||||
fd_set fds;
|
||||
FILE *p; /* the pipe */
|
||||
int fd; /* File descriptor for pipe, and its flags. */
|
||||
+ struct timespec tv;
|
||||
|
||||
for(;;) {
|
||||
+ /* This is a thread, fill the structure early */
|
||||
+ tv.tv_sec = 0;
|
||||
+ tv.tv_nsec = 100000000; /* 1/10th of a second */
|
||||
+
|
||||
/* Open the pipe as file descriptor. */
|
||||
/* (O_RDONLY seems to be enough in Linux, but FreeBSDites seemed to
|
||||
demand O_RDWR.) */
|
||||
- fd = open(fifo_file, O_RDWR);
|
||||
+ /* (Actually, we need to write to the pipe, not read it, so O_WRONLY) */
|
||||
+ fd = open(fifo_file, O_WRONLY);
|
||||
|
||||
if(fd == -1) {
|
||||
perror("xmms_infopipe: Pipe open failed");
|
||||
xmms_quit();
|
||||
+ /* exit the function, don't give the chance to fill with invalid data */
|
||||
+ return;
|
||||
}
|
||||
|
||||
/* Set the file handle to use non-blocking I/O */
|
||||
@@ -262,9 +270,8 @@
|
||||
/* Changed to 1 second after request... report if you have problems.
|
||||
FIXME: Should use XMMS configfile facility & config dialog???
|
||||
*/
|
||||
- sleep(1); /* Umm, or non-blockingness still doesn't work without this!
|
||||
- Is there some nicer way of saying this, like "wait
|
||||
- until no reader?" select()? */
|
||||
+
|
||||
+ nanosleep(&tv, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
--- xmms-infopipe-1.3.orig/applications/xmms-info.php
|
||||
+++ xmms-infopipe-1.3/applications/xmms-info.php
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
$info = fopen ("/tmp/xmms-info", "r");
|
||||
|
||||
- $input = fread ($info, 261);
|
||||
+ $input = fread ($info, 2048);
|
||||
$parse = split ("\n", $input);
|
||||
|
||||
fclose ($info);
|
||||
Reference in New Issue
Block a user