• J
    efifb: prevent null-deref when iterating dmi_list · 55aa42f2
    James Bates 提交于
    The dmi_list array is initialized using gnu designated initializers, and
    therefore may contain fewer explicitly defined entries as there are
    elements in it. This is because the enum above with M_xyz constants
    contains more items than the designated initializer. Those elements not
    explicitly initialized are implicitly set to 0.
    
    Now efifb_setup() loops through all these array elements, and performs
    a strcmp on each item. For non explicitly initialized elements this will
    be a null pointer:
    
    This patch swaps the check order in the if statement, thus checks first
    whether dmi_list[i].base is null.
    Signed-off-by: NJames Bates <james.h.bates@gmail.com>
    Signed-off-by: NDavid Herrmann <dh.herrmann@gmail.com>
    Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
    55aa42f2
efifb.c 9.6 KB