//\r
// If class or subclass or protocol is 0, the counterparts in interface should be checked.\r
//\r
- if (DevDesc->DeviceClass == 0 &&\r
- DevDesc->DeviceSubClass == 0 &&\r
+ if (DevDesc->DeviceClass == 0 ||\r
+ DevDesc->DeviceSubClass == 0 ||\r
DevDesc->DeviceProtocol == 0) {\r
\r
if ((UsbClassDevicePathPtr->DeviceClass == ActIfDesc->InterfaceClass ||\r
return TRUE;\r
}\r
\r
- } else if ((UsbClassDevicePathPtr->DeviceClass != DevDesc->DeviceClass ||\r
+ } else if ((UsbClassDevicePathPtr->DeviceClass == DevDesc->DeviceClass ||\r
UsbClassDevicePathPtr->DeviceClass == 0xff) &&\r
(UsbClassDevicePathPtr->DeviceSubClass == DevDesc->DeviceSubClass ||\r
UsbClassDevicePathPtr->DeviceSubClass == 0xff) &&\r