# HG changeset patch # User nenolod # Date 1162854253 28800 # Node ID 5783d6281431dd493969b9114fceee5bae2c63b5 # Parent ef1967a3cd28c9391e0d2a2c16dcee38989fa82a [svn] - revert due to branching issue diff -r ef1967a3cd28 -r 5783d6281431 ChangeLog --- a/ChangeLog Mon Nov 06 14:11:04 2006 -0800 +++ b/ChangeLog Mon Nov 06 15:04:13 2006 -0800 @@ -1,3 +1,10 @@ +2006-11-06 22:11:04 +0000 Tony Vroon + revision [456] + New-style VFS probe function. If you want an #ifdef feel free to bolt some on. + trunk/src/sexypsf/xmms.c | 25 ++++++++++++------------- + 1 file changed, 12 insertions(+), 13 deletions(-) + + 2006-11-06 21:30:44 +0000 Jonathan Schleifer revision [454] Fixed missing header diff -r ef1967a3cd28 -r 5783d6281431 src/sexypsf/xmms.c --- a/src/sexypsf/xmms.c Mon Nov 06 14:11:04 2006 -0800 +++ b/src/sexypsf/xmms.c Mon Nov 06 15:04:13 2006 -0800 @@ -52,7 +52,8 @@ return &sexypsf_ip; } -static int is_our_fd(gchar *filename, VFSFile *file) { +static int is_our_file(gchar *filename) { + VFSFile *file; gchar magic[4]; // Filter out psflib [we use them, but we can't play them] @@ -64,12 +65,15 @@ if (!strcasecmp(tmps, teststr)) return 0; } - if (vfs_ftell(file) != 0) - vfs_fseek(file, 0, SEEK_SET); - vfs_fread(magic,1,4,file); - //Only allow PSF1 for now. - if (!strncmp(magic,"PSF\x01",4)) - return 1; + if ((file = vfs_fopen(filename,"rb"))) { + vfs_fread(magic,1,4,file); + //Only allow PSF1 for now. + if (!strncmp(magic,"PSF\x01",4)) { + vfs_fclose(file); + return 1; + } + vfs_fclose(file); + } return 0; } @@ -266,7 +270,7 @@ 0, 0, 0, - 0, + is_our_file, 0, sexypsf_xmms_play, sexypsf_xmms_stop, @@ -284,8 +288,5 @@ sexypsf_xmms_getsonginfo, 0, 0, - get_tuple_psf, - 0, - 0, - is_our_fd, + get_tuple_psf };