1
mirror of https://github.com/mpv-player/mpv synced 2025-03-11 04:44:32 +01:00

make use of the new MGA_VID_VERSION ioctl to check

whether the installed driver has the version
we expect it to have.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26863 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
attila 2008-05-23 20:18:06 +00:00
parent b2189d29d9
commit abd22b8f48
2 changed files with 12 additions and 0 deletions

@ -1712,6 +1712,7 @@ static char help_text[]=
#define MSGTR_LIBVO_MGA_IncompatibleDriverVersion "[MGA] Your mga_vid driver version is incompatible with this MPlayer version!\n"
#define MSGTR_LIBVO_MGA_CouldntOpen "[MGA] Couldn't open: %s\n"
#define MGSTR_LIBVO_MGA_ResolutionTooHigh "[MGA] Source resolution is in at least one dimension larger than 1023x1023. Please rescale in software or use -lavdopts lowres=1\n"
#define MGSTR_LIBVO_MGA_mgavidVersionMissmatch "[MGA] The version of the mga_vid driver (%u) does not match the version with which MPlayer was compiled with (%u)\n"
// libvo/vesa_lvo.c

@ -449,6 +449,7 @@ static int mga_uninit(){
static int preinit(const char *vo_subdevice)
{
uint32_t ver;
const char *devname=vo_subdevice?vo_subdevice:"/dev/mga_vid";
sws_rgb2rgb_init(get_sws_cpuflags());
@ -459,6 +460,16 @@ static int preinit(const char *vo_subdevice)
mp_msg(MSGT_VO,MSGL_WARN, MSGTR_LIBVO_MGA_CouldntOpen,devname);
return -1;
}
// check whether the mga_vid driver has the same
// version as we expect
ioctl(f,MGA_VID_GET_VERSION,&ver);
if(MGA_VID_VERSION != ver)
{
mp_msg(MSGT_VO, MSGL_ERR, MGSTR_LIBVO_MGA_mgavidVersionMissmatch, ver, MGA_VID_VERSION);
return -1;
}
#ifdef VO_XMGA
if (!vo_init()) {