[Mplayer-cvslog] CVS: main/libvo vo_xv.c,1.147,1.148
Attila Kinali CVS
attila at mplayerhq.hu
Sun Sep 7 20:59:20 CEST 2003
Update of /cvsroot/mplayer/main/libvo
In directory mail:/var/tmp.root/cvs-serv27309
Modified Files:
vo_xv.c
Log Message:
hopefully final xv ports.
from Jim Hawkins <mplayer at jawkins.com>
Index: vo_xv.c
===================================================================
RCS file: /cvsroot/mplayer/main/libvo/vo_xv.c,v
retrieving revision 1.147
retrieving revision 1.148
diff -u -r1.147 -r1.148
--- vo_xv.c 7 Sep 2003 14:45:10 -0000 1.147
+++ vo_xv.c 7 Sep 2003 18:58:56 -0000 1.148
@@ -623,15 +623,26 @@
}
/* check adaptors */
- if(xv_port >= ai[0].num_ports || xv_port < 0) // FIXME: ai[0] should not be hardcoded
- {
- mp_msg(MSGT_VO, MSGL_WARN,"Xv: Invalid port parameter, overriding with port 0\n");
- xv_port = 0;
- }
- if (xv_port)
- {
- if (XvGrabPort(mDisplay, xv_port, CurrentTime))
- xv_port = 0;
+ if (xv_port) {
+ int port_found;
+
+ for (port_found = 0, i = 0; !port_found && i < adaptors; i++) {
+ if ((ai[i].type & XvInputMask) && (ai[i].type & XvImageMask)) {
+ for (xv_p = ai[i].base_id; xv_p < ai[i].base_id+ai[i].num_ports; ++xv_p) {
+ if (xv_p == xv_port) {
+ port_found = 1;
+ break;
+ }
+ }
+ }
+ }
+ if (port_found) {
+ if (XvGrabPort(mDisplay, xv_port, CurrentTime))
+ xv_port = 0;
+ } else {
+ mp_msg(MSGT_VO, MSGL_WARN,"Xv: Invalid port parameter, overriding with port 0\n");
+ xv_port = 0;
+ }
}
for (i = 0; i < adaptors && xv_port == 0; i++){
More information about the MPlayer-cvslog
mailing list