Package: edid-decode
Version: 0.1~git20191108.3a6108a75be356-1
Severity: wishlist

Dear Maintainer,

I was trying to validate the EDID table of an HDMI device.
The data were incorrect (the device also wasn't recognized correctly) and when
given to edid-decode to analyze the table the program is killed by SIGFPE
caused by a division-by-zero:

    $ edid-decode edid
    Extracted contents:
    header:          00 ff ff ff ff ff ff 00
    serial number:   00 00 00 00 00 00 00 00 01 0c
    version:         01 03
    basic params:    80 50 2d 78 0a
    chroma info:     0d c9 a0 57 47 98 27 12 48 4c
    established:     20 00 00
    standard:        01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
    descriptor 1:    02 3a 80 18 71 38 2d 40 58 2c 45 00 dc 0b 11 00 00 1e
    descriptor 2:    8c 0a d0 8a 20 e0 2d 10 10 3e 96 00 58 c2 21 00 00 18
    descriptor 3:    00 00 00 7c 00 4d 59 20 48 44 54 56 0a 20 20 20 20 20
    descriptor 4:    00 00 00 00 00 00 00 0a 2e 06 00 0a 20 20 20 20 20 20
    extensions:      01
    checksum:        75

    EDID version: 1.3
    Manufacturer: @@@ Model 0 Serial Number 0
    Digital display
    Maximum image size: 80 cm x 45 cm
    Gamma: 2.20
    RGB color display
    First detailed timing is preferred timing
    Display x,y Chromaticity:
      Red:   0.6250, 0.3398
      Green: 0.2802, 0.5947
      Blue:  0.1552, 0.0703
      White: 0.2832, 0.2978
    Established timings supported:
      640x480@60Hz 4:3 HorFreq: 31469 Hz Clock: 25.175 MHz
    Standard timings supported:
    Detailed mode: Clock 148.500 MHz, 476 mm x 267 mm
                   1920 2008 2052 2200 hborder 0
                   1080 1084 1089 1125 vborder 0
                   +hsync +vsync 
                   VertFreq: 60 Hz, HorFreq: 67500 Hz
    Detailed mode: Clock 27.000 MHz, 600 mm x 450 mm
                    720  736  798  858 hborder 0
                    480  489  495  525 vborder 0
                   -hsync -vsync 
                   VertFreq: 59 Hz, HorFreq: 31468 Hz
    Unknown monitor description type 124
    Manufacturer-specified data, tag 0
    Has 1 extension blocks
    Checksum: 0x75 (valid)

    CTA extension block
    Extension version: 3
    26 bytes of CTA data
      Speaker allocation data block
        Speaker map:
          FL/FR - Front Left/Right
          LFE - Low Frequency Effects
          FC - Front Center
          BL/BR - Back Left/Right
          BC - Back Center
          FLC/FRC - Front Left/Right of Center
          RLC/RRC - Rear Left/Right of Center
          SiL/SiR - Side Left/Right
          TpBL/TpBR - Top Back Left/Right
          BtFL/BtBR - Bottom Front Left/Right
      Video data block
      Video data block
        VIC  16 1920x1080@60Hz 16:9  HorFreq: 67500 Hz Clock: 148.500 MHz
        VIC   5 1920x1080i@60Hz 16:9  HorFreq: 33750 Hz Clock: 74.250 MHz
        VIC   4 1280x720@60Hz 16:9  HorFreq: 45000 Hz Clock: 74.250 MHz
        VIC   1 640x480@60Hz 4:3  HorFreq: 31469 Hz Clock: 25.175 MHz
        VIC   2 720x480@60Hz 4:3  HorFreq: 31469 Hz Clock: 27.000 MHz
        VIC   6 1440x480i@60Hz 4:3  HorFreq: 15734 Hz Clock: 27.000 MHz
        VIC  21 1440x576i@50Hz 4:3  HorFreq: 15625 Hz Clock: 27.000 MHz
        VIC  17 720x576@50Hz 4:3  HorFreq: 31250 Hz Clock: 27.000 MHz
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
      Unknown tag 0, length 0 (raw 00)
    Basic audio support
    0 native detailed modes
    Detailed mode: Clock 82.240 MHz, 544 mm x 32 mm
                     32   32  554   64 hborder 32
                   3840 3842 3842 7680 vborder 32
                   -hsync -vsync analog composite field sequential L/R
                   VertFreq: 167 Hz, HorFreq: 1285000 Hz
    Detailed mode: Clock 82.240 MHz, 544 mm x 32 mm
                     32   32  554   64 hborder 32
                    256  258  258 3072 vborder 32
                   -hsync -vsync analog composite field sequential L/R
                   VertFreq: 418 Hz, HorFreq: 1285000 Hz
    Floating point exception

I would expect a sensible error message.

Please note that the table is handled by the current upstream verison of the
edid-decode, which can parse the data and give the error in this case:

    ...
    Invalid Detailed Timings:
      Horizontal Active/Blanking 32/32
      Vertical Active/Blanking 0/0
    Checksum: 0xd8 (valid)

    ----------------

    EDID block does NOT conform to EDID 1.3!
            Missing name descriptor
            Missing monitor ranges
    EDID block does not conform:
            Bad year of manufacture
            Detailed blocks filled with garbage
            Manufacturer name field contains garbage
    Vendor & Product Identification: Invalid year

Regards,
Alex


-- System Information:
Debian Release: 10.1
  APT prefers proposed-updates
  APT policy: (500, 'proposed-updates'), (500, 'oldstable-debug'), (500, 
'oldoldstable'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.3.7 (SMP w/8 CPU cores; PREEMPT)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), LANGUAGE=en_US:en 
(charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)

Versions of packages edid-decode depends on:
ii  libc6  2.28-10

edid-decode recommends no packages.

edid-decode suggests no packages.

-- no debconf information

Reply via email to