From c3b9f6d5c0a2194d3270737145dca7e39e4dfb10 Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Sat, 22 Jan 2011 10:53:06 -0500 Subject: Fix parsing of Postgres timestamps with super-microsecond fractional seconds, based on patch from Vladimir Shabanov --- src/c/urweb.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/c/urweb.c b/src/c/urweb.c index b8c1b051..2af21b7a 100644 --- a/src/c/urweb.c +++ b/src/c/urweb.c @@ -2842,7 +2842,10 @@ uw_Basis_time uw_Basis_unsqlTime(uw_context ctx, uw_Basis_string s) { *dot = 0; if (strptime(s, TIME_FMT_PG, &stm)) { *dot = '.'; - uw_Basis_time r = { mktime(&stm), atoi(dot+1) }; + char usec[] = "000000"; + int len = strlen(dot+1); + memcpy(usec, dot+1, len < 6 ? len : 6); + uw_Basis_time r = { mktime(&stm), atoi(usec) }; return r; } else { -- cgit v1.2.3