summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Verkuil <hans.verkuil@cisco.com>2017-09-09 12:08:19 +0200
committerAdam Jackson <ajax@redhat.com>2017-09-18 10:16:47 -0400
commit51803d2bdc6f34b0ec82ea6a53fe30e73f937c8b (patch)
treef8b7472ac610d43a56dd1ef6720a789896db2b11
parent60a67872f213fda03df4968ca61d2eb17a8cb8a8 (diff)
edid-decode: fix broken bit tests
'if (x[0] >> i)' is not how you test if bit i is set. 'if (x[0] & (1 << i))' works a lot better! Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
-rw-r--r--edid-decode.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/edid-decode.c b/edid-decode.c
index 7aaeace..0c93d10 100644
--- a/edid-decode.c
+++ b/edid-decode.c
@@ -1638,7 +1638,7 @@ cea_colorimetry_block(unsigned char *x)
if (length >= 3) {
for (i = 0; i < ARRAY_SIZE(colorimetry_map); i++) {
- if (x[2] >> i)
+ if (x[2] & (1 << i))
printf(" %s\n", colorimetry_map[i]);
}
}
@@ -1659,14 +1659,14 @@ cea_hdr_metadata_block(unsigned char *x)
if (length >= 3) {
printf(" Electro optical transfer functions:\n");
for (i = 0; i < 6; i++) {
- if (x[2] >> i) {
+ if (x[2] & (1 << i)) {
printf(" %s\n", i < ARRAY_SIZE(eotf_map) ?
eotf_map[i] : "Unknown");
}
}
printf(" Supported static metadata descriptors:\n");
for (i = 0; i < 8; i++) {
- if (x[3] >> i)
+ if (x[3] & (1 << i))
printf(" Static metadata type %d\n", i + 1);
}
}