xserver: Branch 'master'

Adam Jackson ajax at kemper.freedesktop.org
Thu May 21 07:27:20 PDT 2009


 hw/xfree86/ddc/interpret_edid.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

New commits:
commit a2c5ee36b21c2ee5c0468f1b251e74c1412dbecb
Author: Adam Jackson <ajax at redhat.com>
Date:   Thu May 21 10:20:48 2009 -0400

    EDID: Be more cautious about finding vendor blocks.
    
    Many old monitors zero-fill the detailed descriptors, so check for that
    to avoid a useless warning like:
    
    (WW) RADEON(0): Unknown vendor-specific block 0

diff --git a/hw/xfree86/ddc/interpret_edid.c b/hw/xfree86/ddc/interpret_edid.c
index 3edfd1f..bdcc92e 100644
--- a/hw/xfree86/ddc/interpret_edid.c
+++ b/hw/xfree86/ddc/interpret_edid.c
@@ -285,6 +285,8 @@ get_std_timing_section(Uchar *c, struct std_timings *r,
     }
 }
 
+static const unsigned char empty_block[18];
+
 static void
 get_dt_md_section(Uchar *c, struct edid_version *ver, 
 		  struct detailed_monitor_section *det_mon)
@@ -336,10 +338,10 @@ get_dt_md_section(Uchar *c, struct edid_version *ver,
         det_mon[i].type = DS_UNKOWN;
         break;
       }
-      if (c[3] <= 0x0F) {
+      if (c[3] <= 0x0F && memcmp(c, empty_block, sizeof(empty_block))) {
 	det_mon[i].type = DS_VENDOR + c[3];
       }
-    } else { 
+    } else {
       det_mon[i].type = DT;
       get_detailed_timing_section(c,&det_mon[i].section.d_timings);
     }


More information about the xorg-commit mailing list