aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2012-10-02 17:37:41 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2012-10-02 17:46:40 +0300
commit2a4bbed7b80283200216244e98f7f004ad4d735a (patch)
treefb4b5606589429b9cfb6619aa5b4439203679502
parent06623df63bc7debaad5b3239f2a4626b4c1d8855 (diff)
downloadpostgresql-2a4bbed7b80283200216244e98f7f004ad4d735a.tar.gz
postgresql-2a4bbed7b80283200216244e98f7f004ad4d735a.zip
Silence compiler warning about pointer type mismatch on some platforms.
timeval.t_sec is of type time_t, which is not always compatible with long. I'm not sure if this was just harmless warning or a real bug, but this fixes it, anyway.
-rw-r--r--src/bin/pg_basebackup/receivelog.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/bin/pg_basebackup/receivelog.c b/src/bin/pg_basebackup/receivelog.c
index da7a6c84446..d05a588b3ae 100644
--- a/src/bin/pg_basebackup/receivelog.c
+++ b/src/bin/pg_basebackup/receivelog.c
@@ -420,15 +420,20 @@ ReceiveXlogStream(PGconn *conn, XLogRecPtr startpos, uint32 timeline,
if (standby_message_timeout)
{
TimestampTz targettime;
+ long secs;
+ int usecs;
targettime = TimestampTzPlusMilliseconds(last_status,
standby_message_timeout - 1);
localTimestampDifference(now,
targettime,
- &timeout.tv_sec,
- (int *) &timeout.tv_usec);
- if (timeout.tv_sec <= 0)
+ &secs,
+ &usecs);
+ if (secs <= 0)
timeout.tv_sec = 1; /* Always sleep at least 1 sec */
+ else
+ timeout.tv_sec = secs;
+ timeout.tv_sec = usecs;
timeoutptr = &timeout;
}
else