From cfa4d4d040ba58cb94c44482782cfb869c58a68d Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Sun, 17 Dec 2000 04:32:29 +0000
Subject: [PATCH] Tweak select_common_type() to deal with possibility of
 multiple preferred types in a category --- it was taking the last preferred
 type among the inputs, rather than the first one as intended.

---
 src/backend/parser/parse_coerce.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/backend/parser/parse_coerce.c b/src/backend/parser/parse_coerce.c
index fe4d22fb114..97b3d239406 100644
--- a/src/backend/parser/parse_coerce.c
+++ b/src/backend/parser/parse_coerce.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/parser/parse_coerce.c,v 2.51 2000/12/15 18:02:47 tgl Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/parser/parse_coerce.c,v 2.52 2000/12/17 04:32:29 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -364,6 +364,7 @@ select_common_type(List *typeids, const char *context)
 					 context, typeidTypeName(ptype), typeidTypeName(ntype));
 			}
 			else if (IsPreferredType(pcategory, ntype)
+					 && !IsPreferredType(pcategory, ptype)
 					 && can_coerce_type(1, &ptype, &ntype))
 			{
 				/*
-- 
GitLab