PostgreSQL driver: Fix incompatible pointer-to-integer types These result in out-of-bounds stack writes on 64-bit architectures (caller has 4 bytes, callee writes 8 bytes), and seem to have gone unnoticed on little-endian architectures (although big-endian architectures must be broken). This change is required to avoid a build failure with GCC 14. Submitted upstream: diff --git a/Drivers/Postgre7.1/info.c b/Drivers/Postgre7.1/info.c index 63ac91f3f359f6ba..2216ecd4892e4efd 100644 --- a/Drivers/Postgre7.1/info.c +++ b/Drivers/Postgre7.1/info.c @@ -1779,14 +1779,14 @@ char *table_name; char index_name[MAX_INFO_STRING]; short fields_vector[8]; char isunique[10], isclustered[10]; -SDWORD index_name_len, fields_vector_len; +SQLLEN index_name_len, fields_vector_len; TupleNode *row; int i; HSTMT hcol_stmt; StatementClass *col_stmt, *indx_stmt; char column_name[MAX_INFO_STRING], relhasrules[MAX_INFO_STRING]; char **column_names = 0; -Int4 column_name_len; +SQLLEN column_name_len; int total_columns = 0; char error = TRUE; ConnInfo *ci; @@ -2136,7 +2136,7 @@ HSTMT htbl_stmt; StatementClass *tbl_stmt; char tables_query[STD_STATEMENT_LEN]; char attname[MAX_INFO_STRING]; -SDWORD attname_len; +SQLLEN attname_len; char pktab[MAX_TABLE_LEN + 1]; Int2 result_cols;