Skip to content
  • Johannes Schindelin's avatar
    timestamp_t: a new data type for timestamps · dddbad72
    Johannes Schindelin authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    Git's source code assumes that unsigned long is at least as precise as
    time_t. Which is incorrect, and causes a lot of problems, in particular
    where unsigned long is only 32-bit (notably on Windows, even in 64-bit
    versions).
    
    So let's just use a more appropriate data type instead. In preparation
    for this, we introduce the new `timestamp_t` data type.
    
    By necessity, this is a very, very large patch, as it has to replace all
    timestamps' data type in one go.
    
    As we will use a data type that is not necessarily identical to `time_t`,
    we need to be very careful to use `time_t` whenever we interact with the
    system functions, and `timestamp_t` everywhere else.
    
    Signed-off-by: default avatarJohannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    dddbad72