archive-tar: add UL type suffix to unsigned long constant
PATCH 1/1 archive-tar: add UL type suffix to unsigned long constant
---
Hi Jeff,
If you need to re-roll your 'jk/big-and-old-archive-tar' branch, could you please squash this into the relevant patch (commit 8035a1e3, "archive-tar: write extended headers for far-future mtime", 16-06-2016).
Thanks!
ATB,
Ramsay Jones
archive-tar.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
archive-tar.c +1 -1
@@ -187,7 +187,7 @@ static inline unsigned long ustar_size(uintmax_t size)static inline unsigned long ustar_mtime (time_t mtime) { -if (mtime <077777777777 ) +if (mtime <077777777777UL )return mtime;else return 0 ;
Signature · 1 line
2.9.0
Quoted 17 lines · Ramsay Jones
If you need to re-roll your 'jk/big-and-old-archive-tar' branch, could you please squash this into the relevant patch (commit
8035a1e3, "archive-tar: write extended headers for far-future mtime", 16-06-2016).Thanks!
ATB,
Ramsay Jonesarchive-tar.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)archive-tar.c +0
-0
archive-tar.c static inline unsigned long ustar_size(uintmax_t size) · line 190
Quoted 5 lines
archive-tar.c +1
-1@@ -187,7 +187,7 @@ static inline unsigned long ustar_size(uintmax_t size)static inline unsigned long ustar_mtime (time_t mtime) { -if (mtime <077777777777 ) +if (mtime <077777777777UL )
Whoops. I even got it right in the similar line above. :-/
This did make me wonder how the whole thing fares on a system where "unsigned long" is 32-bit (AIUI, Git for Windows is such a system).
The sizes passed around (here and all through git) are "unsigned long", so I don't think we're making anything _worse_.
-Peff
Quoted 27 lines · Jeff King
Quoted 17 lines · Ramsay Jones
If you need to re-roll your 'jk/big-and-old-archive-tar' branch, could you please squash this into the relevant patch (commit
8035a1e3, "archive-tar: write extended headers for far-future mtime", 16-06-2016).Thanks!
ATB,
Ramsay Jonesarchive-tar.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)archive-tar.c +0
-0archive-tar.c static inline unsigned long ustar_size(uintmax_t size) · line 190
Quoted 5 lines
archive-tar.c +1
-1@@ -187,7 +187,7 @@ static inline unsigned long ustar_size(uintmax_t size)static inline unsigned long ustar_mtime (time_t mtime) { -if (mtime <077777777777 ) +if (mtime <077777777777UL )Whoops. I even got it right in the similar line above. :-/
Quoted 5 lines
This did make me wonder how the whole thing fares on a system where "unsigned long" is 32-bit (AIUI, Git for Windows is such a system).
The sizes passed around (here and all through git) are "unsigned long", so I don't think we're making anything _worse_.
Heh, I had exactly the same thought! ;-)
I have a TODO item that reads: check odb code for object size limitations imposed by using 'unsigned long'. This is a known problem on Git for Windows.
[Not for cygwin, however, since long is 64bit (just like linux). The win32api headers on cygwin have been written in terms of a __LONG32 #define to allow them to be used on LLP64 and LP64 systems.]
However, since I don't have GFW installed, I couldn't actually test it, so ...
ATB,
Ramsay Jones