Missing checks on return value of timestamp2tm in datetime.c
Hi all,
timestamp2tm is called close to 40 times in the backend source code,
returning -1 in case of failure. However, there are two places in
datetime.c where we do not check for its return value: GetCurrentDateTime
and GetCurrentTimeUsec.
This does not really matter much in practice as the timestamp used is
GetCurrentTransactionStartTimestamp(), but for correctness shouldn't we
check for its return code and report ERRCODE_DATETIME_VALUE_OUT_OF_RANGE on
error?
Per se the patch attached.
Regards,
--
Michael
On Tue, Jun 30, 2015 at 9:45 PM, Michael Paquier
<michael.paquier@gmail.com> wrote:
timestamp2tm is called close to 40 times in the backend source code,
returning -1 in case of failure. However, there are two places in datetime.c
where we do not check for its return value: GetCurrentDateTime and
GetCurrentTimeUsec.
This does not really matter much in practice as the timestamp used is
GetCurrentTransactionStartTimestamp(), but for correctness shouldn't we
check for its return code and report ERRCODE_DATETIME_VALUE_OUT_OF_RANGE on
error?Per se the patch attached.
And here is the patch.
(Thanks David R. for the poke).
--
Michael