From d5a0a2c30080c644b441cc5ba4259a1066c192a4 Mon Sep 17 00:00:00 2001 From: Anssi Hannula Date: Tue, 9 Feb 2010 17:02:38 +0000 Subject: - monitor-get-edid-using-vbe: o stop retrieval when a retrieved EDID extension block appears identical to the main EDID block (observed with Onkyo TX-SR607 A/V receiver) --- NEWS | 5 +++++ vbe.c | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/NEWS b/NEWS index 8195353..9bc88b7 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,8 @@ +- monitor-get-edid-using-vbe: + o stop retrieval when a retrieved EDID extension block appears + identical to the main EDID block (observed with Onkyo TX-SR607 A/V + receiver) + Version 3.0 - 3 January 2010, by Anssi Hannula - monitor-get-edid-using-vbe: diff --git a/vbe.c b/vbe.c index fcd9d7f..f79187f 100644 --- a/vbe.c +++ b/vbe.c @@ -300,6 +300,10 @@ int get_edid(char *edid, int port, int skip_vbe_check) log_err("EDID: Failure reading extension block %d\n", i); break; } + if (memcmp(edid, edid + i * EDID_BLOCK_SIZE, EDID_BLOCK_SIZE) == 0) { + log_err("EDID: Extension block %d is identical to main EDID block, stopping retrieval\n", i); + break; + } } return i * EDID_BLOCK_SIZE; -- cgit v1.2.1