• Stephen P. Smith's avatar
    roll wt_status_state into wt_status and populate in the collect phase · 73ba5d78
    Stephen P. Smith authored
    Status variables were initialized in the collect phase and some
    variables were later freed in the print functions.
    
    A "struct wt_status" used to be sufficient for the output phase to
    work.  It was designed to be filled in the collect phase and consumed
    in the output phase, but over time some fields were added and output
    phase started filling the fields.
    
    A "struct wt_status_state" that was used in other codepaths turned out
    to be useful in the "git status" output.  This is not tied to "struct
    wt_status", so filling in the collect phase was not consistently
    followed.
    
    Move the status state structure variables into the status state
    structure and populate them in the collect functions.
    
    Create a new function to free the buffers that were being freed in the
    print function.  Call this new function in commit.c where both the
    collect and print functions were being called.
    
    Based on a patch suggestion by Junio C Hamano. [1]
    
    [1] https://public-inbox.org/git/xmqqr2i5ueg4.fsf@gitster-ct.c.googlers.com/Signed-off-by: default avatarStephen P. Smith <ischis2@cox.net>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    73ba5d78
wt-status.c 65.4 KB