Mercurial > mplayer.hg
view vidix/sysdep/pci_win32.c @ 24436:c1b98b43b897
Fix off-by-one error if fsize is odd (does handling that case even make sense?)
and remove a TODO comment that no longer applies.
author | reimar |
---|---|
date | Fri, 14 Sep 2007 12:52:13 +0000 |
parents | a9e111b88c4a |
children | 9c4ad35fabc5 |
line wrap: on
line source
/* This file is based on: $XFree86: xc/programs/Xserver/hw/xfree86/etc/scanpci.c,v 3.34.2.17 1998/11/10 11:55:40 dawes Exp $ Modified for readability by Nick Kurshev */ #include <windows.h> #include <ddk/ntddk.h> #include "../dhahelperwin/dhahelper.h" static HANDLE hDriver; extern int IsWinNT(); static __inline__ int enable_os_io(void) { if(IsWinNT()){ DWORD dwBytesReturned; hDriver = CreateFile("\\\\.\\DHAHELPER",GENERIC_READ | GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL); if(!DeviceIoControl(hDriver, IOCTL_DHAHELPER_ENABLEDIRECTIO, NULL,0, NULL, 0, &dwBytesReturned, NULL)){ fprintf(stderr,"Unable to enable directio please install dhahelper.sys.\n"); return(1); } } return(0); } static __inline__ int disable_os_io(void) { if(IsWinNT()){ DWORD dwBytesReturned; DeviceIoControl(hDriver, IOCTL_DHAHELPER_DISABLEDIRECTIO, NULL,0, NULL, 0, &dwBytesReturned, NULL); CloseHandle(hDriver); } return(0); }