aboutsummaryrefslogtreecommitdiffstats
path: root/parse-base-block.cpp
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil-cisco@xs4all.nl>2021-08-05 13:54:06 +0200
committerHans Verkuil <hverkuil-cisco@xs4all.nl>2021-08-05 13:54:06 +0200
commit517ab8983e8699547cd7993ca3d2d449ff6e4ab9 (patch)
treedf947b34ae2979f9ff8bf1365b01f10fd6c42fae /parse-base-block.cpp
parent0b7bff1e8abfab7981e7d9519b7affd60a79d545 (diff)
edid-decode: DTDs 0xf7 and 0xf8 are for >= 1.4 only
The DTDs with tag 0xf7 and 0xf8 are only defined in EDID 1.4 and up, so fail if they are used in older EDID versions. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Diffstat (limited to 'parse-base-block.cpp')
-rw-r--r--parse-base-block.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/parse-base-block.cpp b/parse-base-block.cpp
index 7375ce8..e2901a6 100644
--- a/parse-base-block.cpp
+++ b/parse-base-block.cpp
@@ -1176,6 +1176,8 @@ void edid_state::detailed_block(const unsigned char *x)
sprintf(type, "DMT 0x%02x", dmt_id);
print_timings(" ", find_dmt_id(dmt_id), type);
}
+ if (base.edid_minor < 4)
+ fail("Not allowed for EDID < 1.4.\n");
return;
case 0xf8:
data_block = "CVT 3 Byte Timing Codes";
@@ -1186,6 +1188,8 @@ void edid_state::detailed_block(const unsigned char *x)
}
for (i = 0; i < 4; i++)
detailed_cvt_descriptor(" ", x + 6 + (i * 3), !i);
+ if (base.edid_minor < 4)
+ fail("Not allowed for EDID < 1.4.\n");
return;
case 0xf9:
data_block = "Display Color Management Data";

Privacy Policy