diff --git a/libvo/mga_common.c b/libvo/mga_common.c index d63513a35b..e863f76976 100644 --- a/libvo/mga_common.c +++ b/libvo/mga_common.c @@ -292,6 +292,15 @@ static int mga_uninit(){ static uint32_t preinit(const char *arg) { + char *devname=vo_subdevice?vo_subdevice:"/dev/mga_vid"; + + f = open(devname,O_RDWR); + if(f == -1) + { + perror("open"); + printf("Couldn't open %s\n",devname); + return(-1); + } return 0; } diff --git a/libvo/vo_mga.c b/libvo/vo_mga.c index b7c9d361cf..1bf4dd1982 100644 --- a/libvo/vo_mga.c +++ b/libvo/vo_mga.c @@ -60,9 +60,8 @@ static vo_info_t vo_info = static uint32_t config(uint32_t width, uint32_t height, uint32_t d_width, uint32_t d_height, uint32_t fullscreen, char *title, uint32_t format,const vo_tune_info_t *info) { -char *devname=vo_subdevice?vo_subdevice:"/dev/mga_vid"; - if (f >= 0) mga_uninit(); +// if (f >= 0) mga_uninit(); if(!vo_screenwidth || !vo_screenheight) { int fd; struct fb_var_screeninfo fbinfo; @@ -93,13 +92,6 @@ char *devname=vo_subdevice?vo_subdevice:"/dev/mga_vid"; } - f = open(devname,O_RDWR); - if(f == -1) - { - printf("Couldn't open %s\n",devname); - return(-1); - } - switch(format){ case IMGFMT_YV12: width+=width&1;height+=height&1; diff --git a/libvo/vo_xmga.c b/libvo/vo_xmga.c index 59c51c4f4b..68a8c89ac0 100644 --- a/libvo/vo_xmga.c +++ b/libvo/vo_xmga.c @@ -202,16 +202,6 @@ static uint32_t config( uint32_t width, uint32_t height, uint32_t d_width, uint3 XGCValues xgcv; unsigned long xswamask; - char *devname=vo_subdevice?vo_subdevice:"/dev/mga_vid"; - - f = open(devname,O_RDWR); - if(f == -1) - { - perror("open"); - printf("Couldn't open %s\n",devname); - return(-1); - } - width+=width&1; switch(format)