• K
    Fixed wrong assumption in Table::Open() · 4e9d9d98
    Kosie van der Merwe 提交于
    Summary:
    `Table::Open()` assumes that `size` correctly describes the size of `file`, added a check that the footer is actually the right size and for good measure added assertions to `Footer::DecodeFrom()`.
    
    This was discovered by running `valgrind ./db_test` and seeing that `Footer::DecodeFrom()` was accessing uninitialized memory.
    
    Test Plan:
    make clean check
    
    ran `valgrind ./db_test` and saw DBTest.NoSpace no longer complains about a conditional jump being dependent on uninitialized memory.
    
    Reviewers: dhruba, vamsi, emayanke, sheki
    
    Reviewed By: dhruba
    
    CC: leveldb
    
    Differential Revision: https://reviews.facebook.net/D7815
    4e9d9d98
table.cc 8.9 KB