diff options
author | wiz <wiz> | 2008-10-20 07:40:00 +0000 |
---|---|---|
committer | wiz <wiz> | 2008-10-20 07:40:00 +0000 |
commit | e14c5e0c5caa93579c25faf7b80989c8f4123360 (patch) | |
tree | 2cb9606daa9b451d920619d93f640f615182f1d3 /multimedia/mplayer-share/patches | |
parent | 27b0738c216cf398c14ef9f8ccb12ee8752392d8 (diff) | |
download | pkgsrc-e14c5e0c5caa93579c25faf7b80989c8f4123360.tar.gz |
Add a patch for better VCD support from Sergey Svishchev.
Fixes PR 20549.
Diffstat (limited to 'multimedia/mplayer-share/patches')
-rw-r--r-- | multimedia/mplayer-share/patches/patch-an | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/multimedia/mplayer-share/patches/patch-an b/multimedia/mplayer-share/patches/patch-an new file mode 100644 index 00000000000..027895e4ead --- /dev/null +++ b/multimedia/mplayer-share/patches/patch-an @@ -0,0 +1,37 @@ +$NetBSD: patch-an,v 1.1 2008/10/20 07:40:00 wiz Exp $ + +--- stream/vcd_read_fbsd.h.orig 2007-10-07 19:49:26.000000000 +0000 ++++ stream/vcd_read_fbsd.h +@@ -37,9 +37,8 @@ typedef struct mp_vcd_priv_st { + vcd_tocentry entry; + #ifdef VCD_NETBSD + struct cd_toc_entry entry_data; +-#else +- cdsector_t buf; + #endif ++ cdsector_t buf; + } mp_vcd_priv_t; + + static inline void +@@ -208,8 +207,8 @@ vcd_read(mp_vcd_priv_t* vcd, char *mem) + sc.cmd[9] = 1 << 4; // user data only + sc.cmd[10] = 0; // no subchannel + sc.cmdlen = 12; +- sc.databuf = (caddr_t) mem; +- sc.datalen = 2328; ++ sc.databuf = (caddr_t) vcd->buf.data; ++ sc.datalen = VCD_SECTOR_DATA + 4; // MMC-3 spec says there are 4 extra bytes + sc.senselen = sizeof(sc.sense); + sc.flags = SCCMD_READ; + sc.timeout = 10000; +@@ -226,9 +225,9 @@ vcd_read(mp_vcd_priv_t* vcd, char *mem) + #else + if (pread(vcd->fd,&vcd->buf,VCD_SECTOR_SIZE,vcd_get_msf(vcd)*VCD_SECTOR_SIZE) + != VCD_SECTOR_SIZE) return 0; // EOF? ++#endif + + memcpy(mem,vcd->buf.data,VCD_SECTOR_DATA); +-#endif + vcd_inc_msf(vcd); + return VCD_SECTOR_DATA; + } |