Fix capability/property checking methods to handle multi-bit capabilities.

Some capabilities, such as CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL
are defined in terms of other capabilities; eg:
CAPABILITY_SUPPORTS_VT_LOCAL_RX | CAPABILITY_SUPPORTS_VT_LOCAL_TX

The current capability logic will return TRUE if checking for
CAPABILITY_SUPPORTS_VT_LOCAL_BIDIRECTIONAL and either of the TX or RX bits
is on; which is incorrect.  Yay cts tests for finding this.

Bug: 26272951
Change-Id: I55a5676674ee74e213deb3a07e226b04a37d10ee
This commit is contained in:
Tyler Gunn
2015-12-18 14:33:57 -08:00
parent 9385625007
commit 014c711b0d
2 changed files with 3 additions and 3 deletions

View File

@@ -294,7 +294,7 @@ public abstract class Connection extends Conferenceable {
* @hide
*/
public static boolean can(int capabilities, int capability) {
return (capabilities & capability) != 0;
return (capabilities & capability) == capability;
}
/**