diff options
author | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2012-10-02 17:37:41 +0300 |
---|---|---|
committer | Heikki Linnakangas <heikki.linnakangas@iki.fi> | 2012-10-02 17:46:40 +0300 |
commit | 2a4bbed7b80283200216244e98f7f004ad4d735a (patch) | |
tree | fb4b5606589429b9cfb6619aa5b4439203679502 /src | |
parent | 06623df63bc7debaad5b3239f2a4626b4c1d8855 (diff) | |
download | postgresql-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.
Diffstat (limited to 'src')
-rw-r--r-- | src/bin/pg_basebackup/receivelog.c | 11 |
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 |