mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1234385: Add downloadable blocklist support for between comparison types, by recognizing driverVersionMax when parsing. r=benwa
This commit is contained in:
parent
b26e076738
commit
1289d61b67
@ -150,5 +150,140 @@
|
||||
<feature> DIRECT2D </feature>
|
||||
<featureStatus> BLOCKED_DEVICE </featureStatus>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> DIRECT3D_11_LAYERS </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 8.52.322.1112 </driverVersion>
|
||||
<driverVersionMax> 8.52.323.1000 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_EXCLUSIVE </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> OPENGL_LAYERS </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 8.50.322.1000 </driverVersion>
|
||||
<driverVersionMax> 8.52.322.1112 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_EXCLUSIVE </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> DIRECT3D_11_ANGLE </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 8.52.322.1000 </driverVersion>
|
||||
<driverVersionMax> 9.52.322.1000 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_EXCLUSIVE </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> HARDWARE_VIDEO_DECODING </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 7.82.322.1000 </driverVersion>
|
||||
<driverVersionMax> 9.25.322.1001 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_INCLUSIVE </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> WEBRTC_HW_ACCELERATION </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 8.52.322.1112 </driverVersion>
|
||||
<driverVersionMax> 9.52.322.1300 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_INCLUSIVE </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> WEBRTC_HW_ACCELERATION_DECODE </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 8.52.322.1000 </driverVersion>
|
||||
<driverVersionMax> 8.52.322.1112 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_INCLUSIVE </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> WEBRTC_HW_ACCELERATION_ENCODE </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 8.52.322.1112 </driverVersion>
|
||||
<driverVersionMax> 8.52.322.1200 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_INCLUSIVE_START </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> WEBGL_MSAA </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 8.52.322.1000 </driverVersion>
|
||||
<driverVersionMax> 8.52.322.1200 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_INCLUSIVE_START </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
<gfxBlacklistEntry>
|
||||
<os>All</os>
|
||||
<vendor>0xdcdc</vendor>
|
||||
<devices>
|
||||
<device>0x2783</device>
|
||||
<device>0x1234</device>
|
||||
<device>0x2782</device>
|
||||
</devices>
|
||||
<feature> WEBGL_ANGLE </feature>
|
||||
<featureStatus> BLOCKED_DRIVER_VERSION </featureStatus>
|
||||
<driverVersion> 8.52.322.1000 </driverVersion>
|
||||
<driverVersionMax> 8.52.322.1112 </driverVersionMax>
|
||||
<driverVersionComparator> BETWEEN_INCLUSIVE_START </driverVersionComparator>
|
||||
</gfxBlacklistEntry>
|
||||
|
||||
</gfxItems>
|
||||
</blocklist>
|
||||
|
@ -56,7 +56,7 @@ function run_test() {
|
||||
do_test_finished();
|
||||
return;
|
||||
case "Darwin":
|
||||
// We don't support driver versions on Darwin.
|
||||
// We don't support driver versions on OS X.
|
||||
do_test_finished();
|
||||
return;
|
||||
case "Android":
|
||||
@ -66,7 +66,7 @@ function run_test() {
|
||||
break;
|
||||
}
|
||||
|
||||
createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "3", "8");
|
||||
createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "15.0", "8");
|
||||
startupManager();
|
||||
|
||||
do_test_pending();
|
||||
@ -80,6 +80,33 @@ function run_test() {
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_DIRECT3D_9_LAYERS);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_STATUS_OK);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_DIRECT3D_11_LAYERS);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_STATUS_OK);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_OPENGL_LAYERS);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_STATUS_OK);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_DIRECT3D_11_ANGLE);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_BLOCKED_DRIVER_VERSION);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_HARDWARE_VIDEO_DECODING);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_BLOCKED_DRIVER_VERSION);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_WEBRTC_HW_ACCELERATION);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_BLOCKED_DRIVER_VERSION);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_WEBRTC_HW_ACCELERATION_DECODE);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_BLOCKED_DRIVER_VERSION);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_WEBRTC_HW_ACCELERATION_ENCODE);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_BLOCKED_DRIVER_VERSION);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_WEBGL_MSAA);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_BLOCKED_DRIVER_VERSION);
|
||||
|
||||
status = gfxInfo.getFeatureStatus(Ci.nsIGfxInfo.FEATURE_WEBGL_ANGLE);
|
||||
do_check_eq(status, Ci.nsIGfxInfo.FEATURE_STATUS_OK);
|
||||
|
||||
gTestserver.stop(do_test_finished);
|
||||
}
|
||||
|
||||
|
@ -566,6 +566,15 @@ BlacklistEntryToDriverInfo(nsIDOMNode* aBlacklistEntry,
|
||||
aDriverInfo.mDriverVersion = version;
|
||||
}
|
||||
|
||||
// <driverVersionMax> 8.52.322.2202 </driverVersionMax>
|
||||
if (BlacklistNodeGetChildByName(element, NS_LITERAL_STRING("driverVersionMax"),
|
||||
getter_AddRefs(dataNode))) {
|
||||
BlacklistNodeToTextValue(dataNode, dataValue);
|
||||
uint64_t version;
|
||||
if (ParseDriverVersion(dataValue, &version))
|
||||
aDriverInfo.mDriverVersionMax = version;
|
||||
}
|
||||
|
||||
// <driverVersionComparator> LESS_THAN_OR_EQUAL </driverVersionComparator>
|
||||
if (BlacklistNodeGetChildByName(element, NS_LITERAL_STRING("driverVersionComparator"),
|
||||
getter_AddRefs(dataNode))) {
|
||||
|
Loading…
Reference in New Issue
Block a user