mirror of
https://github.com/postgres/postgres.git
synced 2025-12-12 02:37:31 +03:00
Add a macro for the declared typlen of type timetz.
pg_type.typlen says 12 for the size of timetz, but sizeof(TimeTzADT) will be 16 on most platforms due to alignment padding. Using the sizeof number is no problem for usages such as palloc'ing a result datum, but in usages such as datumCopy we really ought to match what pg_type says. Add a macro TIMETZ_TYPLEN so that we have a symbolic way to write that rather than hard-coding "12". I cannot find any place where we've needed this so far, but an upcoming patch requires it. Author: Tom Lane <tgl@sss.pgh.pa.us> Reviewed-by: Chao Li <li.evan.chao@gmail.com> Discussion: https://postgr.es/m/2329959.1765047648@sss.pgh.pa.us
This commit is contained in:
@@ -30,6 +30,14 @@ typedef struct
|
||||
int32 zone; /* numeric time zone, in seconds */
|
||||
} TimeTzADT;
|
||||
|
||||
/*
|
||||
* sizeof(TimeTzADT) will be 16 on most platforms due to alignment padding.
|
||||
* However, timetz's typlen is 12 according to pg_type. In most places
|
||||
* we can get away with using sizeof(TimeTzADT), but where it's important
|
||||
* to match the declared typlen, use TIMETZ_TYPLEN.
|
||||
*/
|
||||
#define TIMETZ_TYPLEN 12
|
||||
|
||||
/*
|
||||
* Infinity and minus infinity must be the max and min values of DateADT.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user