• Paul Menzel's avatar
    Abort when PTT search table has zero entries · ec45ee70
    Paul Menzel authored
    The static analyzer from LLVM/Clang 1:3.4~svn194079-1 reports a possible
    allocation of size 0 in `libdvdread/src/ifo_read.c`.
    
            $ scan-build -o scan-build make
            $ scan-view scan-build/2013-11-18-155601-16168-1
    
    When `vts_ptt_srpt->nr_of_srpts` is zero the allocation size is zero.
    
            vts_ptt_srpt->title = malloc(vts_ptt_srpt->nr_of_srpts * sizeof(ttu_t));
    
    The manual of the function `malloc` writes the following.
    
            If size is 0, then malloc() returns either NULL, or a unique
            pointer value that can later be successfully passed to free().
    
    So check for 0 and, if it is, abort by going to the label `fail`.
    ec45ee70
ifo_read.c 67.2 KB