mirror of
https://github.com/git/git
synced 2024-08-28 20:20:07 +00:00
![Johannes Schindelin](/assets/img/avatar_default.png)
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: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
11 lines
300 B
C
11 lines
300 B
C
#ifndef REACHEABLE_H
|
|
#define REACHEABLE_H
|
|
|
|
struct progress;
|
|
extern int add_unseen_recent_objects_to_traversal(struct rev_info *revs,
|
|
timestamp_t timestamp);
|
|
extern void mark_reachable_objects(struct rev_info *revs, int mark_reflog,
|
|
timestamp_t mark_recent, struct progress *);
|
|
|
|
#endif
|