--- xorg-server-1.2.0/hw/xfree86/ddc/ddcProperty.c.jx 2007-02-26 13:39:00.000000000 -0500 +++ xorg-server-1.2.0/hw/xfree86/ddc/ddcProperty.c 2007-02-26 14:37:33.000000000 -0500 @@ -313,8 +313,10 @@ preferred = PREFERRED_TIMING_MODE(DDC->features.msc); - Monitor->widthmm = 10 * DDC->features.hsize; - Monitor->heightmm = 10 * DDC->features.vsize; + if (Monitor->widthmm <= 0 && Monitor->heightmm <= 0) { + Monitor->widthmm = 10 * DDC->features.hsize; + Monitor->heightmm = 10 * DDC->features.vsize; + } /* If this is a digital display, then we can use reduced blanking */ if (DDC->features.input_type)