{"thread":{"id":"18750","subject":"[PATCH] 64-bit fix for date.c.","startedAt":"2009-04-06T17:26:37Z","lastAt":"2009-05-06T16:49:01Z","messageCount":7,"participants":["Bernd Ahlers","Jeff King","Junio C Hamano","Tony Finch"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"110608","messageId":"20090406172637.GA17437@jenna.bytemine.net","threadId":"18750","inReplyTo":null,"subject":"[PATCH] 64-bit fix for date.c.","fromName":"Bernd Ahlers","fromEmail":"bernd@ba-net.org","sentAt":"2009-04-06T17:26:37Z","receivedAt":"2009-04-06T17:26:37Z","isPatch":true,"sender":{"key":"bernd@ba-net.org","avatar":"https://gravatar.com/avatar/04df7031bc24178cd81d8d4236f02a8409f916c255a66d09bf7137db2d0f550c?d=mp&s=160"},"body":"Hello!\n\nThis unbreaks the localtime_r call on OpenBSD/sparc64 and removes\nthe following compiler warning.\n\n\"passing arg 1 of `localtime_r' from incompatible pointer type\"\n---\n date.c |    4 +++-\n 1 files changed, 3 insertions(+), 1 deletions(-)\n\ndiff --git a/date.c b/date.c\nindex 1165d30..409a17d 100644\n--- a/date.c\n+++ b/date.c\n@@ -871,13 +871,15 @@ unsigned long approxidate(const char *date)\n \tint number = 0;\n \tstruct tm tm, now;\n \tstruct timeval tv;\n+\ttime_t time_sec;\n \tchar buffer[50];\n \n \tif (parse_date(date, buffer, sizeof(buffer)) > 0)\n \t\treturn strtoul(buffer, NULL, 10);\n \n \tgettimeofday(&tv, NULL);\n-\tlocaltime_r(&tv.tv_sec, &tm);\n+\ttime_sec = tv.tv_sec;\n+\tlocaltime_r(&time_sec, &tm);\n \tnow = tm;\n \tfor (;;) {\n \t\tunsigned char c = *date;\n-- \n1.6.2.2\n"},{"id":"110619","messageId":"20090406190657.GC28120@coredump.intra.peff.net","threadId":"18750","inReplyTo":"20090406172637.GA17437@jenna.bytemine.net","subject":"Re: [PATCH] 64-bit fix for date.c.","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2009-04-06T19:06:58Z","receivedAt":"2009-04-06T19:06:58Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, Apr 06, 2009 at 07:26:37PM +0200, Bernd Ahlers wrote:\n\n> @@ -871,13 +871,15 @@ unsigned long approxidate(const char *date)\n>  \tstruct timeval tv;\n> +\ttime_t time_sec;\n> [...]\n>  \tgettimeofday(&tv, NULL);\n> -\tlocaltime_r(&tv.tv_sec, &tm);\n> +\ttime_sec = tv.tv_sec;\n> +\tlocaltime_r(&time_sec, &tm);\n\nHmph. According to POSIX, tv_sec _is_ a time_t. But I see on FreeBSD,\nalso, it is actually a \"long\". So I think this fix makes sense.\n\n-Peff\n"},{"id":"112984","messageId":"20090504142614.GE8658@jenna.bytemine.net","threadId":"18750","inReplyTo":"20090406190657.GC28120@coredump.intra.peff.net","subject":"Re: [PATCH] 64-bit fix for date.c.","fromName":"Bernd Ahlers","fromEmail":"bernd@ba-net.org","sentAt":"2009-05-04T14:26:14Z","receivedAt":"2009-05-04T14:26:14Z","isPatch":true,"sender":{"key":"bernd@ba-net.org","avatar":"https://gravatar.com/avatar/04df7031bc24178cd81d8d4236f02a8409f916c255a66d09bf7137db2d0f550c?d=mp&s=160"},"body":"Jeff King [Mon, Apr 06, 2009 at 03:06:58PM -0400] wrote:\n>On Mon, Apr 06, 2009 at 07:26:37PM +0200, Bernd Ahlers wrote:\n>\n>> @@ -871,13 +871,15 @@ unsigned long approxidate(const char *date)\n>>  \tstruct timeval tv;\n>> +\ttime_t time_sec;\n>> [...]\n>>  \tgettimeofday(&tv, NULL);\n>> -\tlocaltime_r(&tv.tv_sec, &tm);\n>> +\ttime_sec = tv.tv_sec;\n>> +\tlocaltime_r(&time_sec, &tm);\n>\n>Hmph. According to POSIX, tv_sec _is_ a time_t. But I see on FreeBSD,\n>also, it is actually a \"long\". So I think this fix makes sense.\n>\nOkay. So what's the next step to get this committed? :)\n\nBernd\n"},{"id":"112986","messageId":"20090504143112.GA14214@coredump.intra.peff.net","threadId":"18750","inReplyTo":"20090504142614.GE8658@jenna.bytemine.net","subject":"Re: [PATCH] 64-bit fix for date.c.","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2009-05-04T14:31:12Z","receivedAt":"2009-05-04T14:31:12Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Mon, May 04, 2009 at 04:26:14PM +0200, Bernd Ahlers wrote:\n\n> Jeff King [Mon, Apr 06, 2009 at 03:06:58PM -0400] wrote:\n> >On Mon, Apr 06, 2009 at 07:26:37PM +0200, Bernd Ahlers wrote:\n> >\n> >> @@ -871,13 +871,15 @@ unsigned long approxidate(const char *date)\n> >>  \tstruct timeval tv;\n> >> +\ttime_t time_sec;\n> >> [...]\n> >>  \tgettimeofday(&tv, NULL);\n> >> -\tlocaltime_r(&tv.tv_sec, &tm);\n> >> +\ttime_sec = tv.tv_sec;\n> >> +\tlocaltime_r(&time_sec, &tm);\n> >\n> >Hmph. According to POSIX, tv_sec _is_ a time_t. But I see on FreeBSD,\n> >also, it is actually a \"long\". So I think this fix makes sense.\n> >\n> Okay. So what's the next step to get this committed? :)\n\nLooks like Junio missed it the first time around, so re-send it to him,\ncc'ing the list. And you can add my\n\n  Acked-by: Jeff King <peff@peff.net>\n\n-Peff\n"},{"id":"113064","messageId":"7vvdoeye1c.fsf@alter.siamese.dyndns.org","threadId":"18750","inReplyTo":"20090504143112.GA14214@coredump.intra.peff.net","subject":"Re: [PATCH] 64-bit fix for date.c.","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2009-05-06T05:51:43Z","receivedAt":"2009-05-06T05:51:43Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> On Mon, May 04, 2009 at 04:26:14PM +0200, Bernd Ahlers wrote:\n>\n>> Jeff King [Mon, Apr 06, 2009 at 03:06:58PM -0400] wrote:\n>> >On Mon, Apr 06, 2009 at 07:26:37PM +0200, Bernd Ahlers wrote:\n>> >\n>> >> @@ -871,13 +871,15 @@ unsigned long approxidate(const char *date)\n>> >>  \tstruct timeval tv;\n>> >> +\ttime_t time_sec;\n>> >> [...]\n>> >>  \tgettimeofday(&tv, NULL);\n>> >> -\tlocaltime_r(&tv.tv_sec, &tm);\n>> >> +\ttime_sec = tv.tv_sec;\n>> >> +\tlocaltime_r(&time_sec, &tm);\n>> >\n>> >Hmph. According to POSIX, tv_sec _is_ a time_t. But I see on FreeBSD,\n>> >also, it is actually a \"long\". So I think this fix makes sense.\n>> >\n>> Okay. So what's the next step to get this committed? :)\n>\n> Looks like Junio missed it the first time around, so re-send it to him,\n> cc'ing the list. And you can add my\n>\n>   Acked-by: Jeff King <peff@peff.net>\n\nThanks.\n"},{"id":"113084","messageId":"alpine.LSU.2.00.0905061523300.28199@hermes-2.csi.cam.ac.uk","threadId":"18750","inReplyTo":"7vvdoeye1c.fsf@alter.siamese.dyndns.org","subject":"Re: [PATCH] 64-bit fix for date.c.","fromName":"Tony Finch","fromEmail":"dot@dotat.at","sentAt":"2009-05-06T14:26:36Z","receivedAt":"2009-05-06T14:26:36Z","isPatch":true,"sender":{"key":"dot@dotat.at","avatar":"https://avatars.githubusercontent.com/u/68429?v=4"},"body":"Jeff King [Mon, Apr 06, 2009 at 03:06:58PM -0400] wrote:\n>\n>Hmph. According to POSIX, tv_sec _is_ a time_t. But I see on FreeBSD,\n>also, it is actually a \"long\". So I think this fix makes sense.\n\nFreeBSD-7 has time_t tv_sec.\n\nTony.\n-- \nf.anthony.n.finch  <dot@dotat.at>  http://dotat.at/\nGERMAN BIGHT HUMBER: SOUTHWEST 5 TO 7. MODERATE OR ROUGH. SQUALLY SHOWERS.\nMODERATE OR GOOD.\n"},{"id":"113096","messageId":"20090506164900.GA15160@sigill.intra.peff.net","threadId":"18750","inReplyTo":"alpine.LSU.2.00.0905061523300.28199@hermes-2.csi.cam.ac.uk","subject":"Re: [PATCH] 64-bit fix for date.c.","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2009-05-06T16:49:01Z","receivedAt":"2009-05-06T16:49:01Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Wed, May 06, 2009 at 03:26:36PM +0100, Tony Finch wrote:\n\n> Jeff King [Mon, Apr 06, 2009 at 03:06:58PM -0400] wrote:\n> >\n> >Hmph. According to POSIX, tv_sec _is_ a time_t. But I see on FreeBSD,\n> >also, it is actually a \"long\". So I think this fix makes sense.\n> \n> FreeBSD-7 has time_t tv_sec.\n\nThanks for the data point (I had looked at FreeBSD 6). I think this fix\nstill makes sense, though, as it should work on either type (and we\nneed to support the older platforms, too).\n\n-Peff\n"}]}