richardphibel / rpms / rpm

Forked from rpms/rpm 2 years ago
Clone

51dac1 Fix two issues in RPM CoW

Authored and Committed by Richard Phibel a year ago
    Fix two issues in RPM CoW
    
    1. Fix for mix transcoded/untranscoded transactions
    The flag saying whether a package is transcoded is not clean-up between
    each packages. Because of that if a non-transcoded package is treated
    after a transcoded one, the package is treated as transcoded
    
    2. Fix stack overflow in rpm2extents
    Creation of array struct digestoffset offsets[rpmfiFC(fi)] caused a
    stack overflow because the total size is greater than 8M which is the
    stack size limit on Linux. To fix the issue, the array is allocated on
    the heap.
    I used AddressSanitizer to find the root cause of the issue. It found a
    number of memory leaks so I fixed them as well.
    
        
file modified
+7 -1