Re: BUG #16953: OOB access while converting "interval" to char

Julien Rouhaud <rjuju123@gmail.com>

From: Julien Rouhaud <rjuju123@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: t.larionov@postgrespro.ru, pgsql-bugs@lists.postgresql.org
Date: 2021-04-12T03:13:02Z
Lists: pgsql-bugs
On Mon, Apr 12, 2021 at 12:04:23PM +0900, Michael Paquier wrote:
> On Fri, Apr 09, 2021 at 07:58:51PM +0900, Michael Paquier wrote:
> > Yep.  The regression tests show what I would expect.  I'll check in
> > details later.
> 
> I have spent some time on that today and applied this patch down to
> 9.6, after adding more comments and simplifying a bit the calculation
> method used.  Instead of using the "mon" variable to store an
> intermediate result, I have simplified things so as this only uses
> tm->tm_mon, and "mon" for the position in the roman-numeral array is
> adjusted only once.

Thanks Michael!  I thought we'd want to keep the original calculation for
consistency, but directly computing the needed offset is clearly simpler to
read!



Commits

  1. Fix out-of-bound memory access for interval -> char conversion