mirror of
https://github.com/reactos/reactos.git
synced 2024-11-01 12:26:32 +00:00
[VIDEOPRT] Allow conflicting resources if this is the video base driver
CORE-18960
This commit is contained in:
parent
84f423f030
commit
08a6834075
|
@ -24,8 +24,18 @@
|
||||||
#define NDEBUG
|
#define NDEBUG
|
||||||
#include <debug.h>
|
#include <debug.h>
|
||||||
|
|
||||||
|
extern BOOLEAN VpBaseVideo;
|
||||||
|
|
||||||
/* PRIVATE FUNCTIONS **********************************************************/
|
/* PRIVATE FUNCTIONS **********************************************************/
|
||||||
|
|
||||||
|
static BOOLEAN
|
||||||
|
IntIsVgaSaveDriver(
|
||||||
|
IN PVIDEO_PORT_DEVICE_EXTENSION DeviceExtension)
|
||||||
|
{
|
||||||
|
UNICODE_STRING VgaSave = RTL_CONSTANT_STRING(L"\\Driver\\VgaSave");
|
||||||
|
return RtlEqualUnicodeString(&VgaSave, &DeviceExtension->DriverObject->DriverName, TRUE);
|
||||||
|
}
|
||||||
|
|
||||||
NTSTATUS NTAPI
|
NTSTATUS NTAPI
|
||||||
IntVideoPortGetLegacyResources(
|
IntVideoPortGetLegacyResources(
|
||||||
IN PVIDEO_PORT_DRIVER_EXTENSION DriverExtension,
|
IN PVIDEO_PORT_DRIVER_EXTENSION DriverExtension,
|
||||||
|
@ -994,6 +1004,16 @@ VideoPortVerifyAccessRanges(
|
||||||
|
|
||||||
ExFreePoolWithTag(ResourceList, TAG_VIDEO_PORT);
|
ExFreePoolWithTag(ResourceList, TAG_VIDEO_PORT);
|
||||||
|
|
||||||
|
/* If VgaSave driver is conflicting and we don't explicitely want
|
||||||
|
* to use it, ignore the problem (because win32k will try to use
|
||||||
|
* this driver only if all other ones are failing). */
|
||||||
|
if (Status == STATUS_CONFLICTING_ADDRESSES &&
|
||||||
|
IntIsVgaSaveDriver(DeviceExtension) &&
|
||||||
|
!VpBaseVideo)
|
||||||
|
{
|
||||||
|
return NO_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
if (!NT_SUCCESS(Status) || ConflictDetected)
|
if (!NT_SUCCESS(Status) || ConflictDetected)
|
||||||
return ERROR_INVALID_PARAMETER;
|
return ERROR_INVALID_PARAMETER;
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in a new issue