From b9be04e63dcb0dca5c67139c58dd5129acaf7c21 Mon Sep 17 00:00:00 2001
From: Tatsuo Ishii <ishii@postgresql.org>
Date: Thu, 19 Apr 2001 02:34:35 +0000
Subject: [PATCH] Add a crash gurard to pg_encoding_mblen in case of an invalid
 encoding given.

---
 src/backend/utils/mb/wchar.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/backend/utils/mb/wchar.c b/src/backend/utils/mb/wchar.c
index f3d91e963f..43371f9477 100644
--- a/src/backend/utils/mb/wchar.c
+++ b/src/backend/utils/mb/wchar.c
@@ -1,7 +1,7 @@
 /*
  * conversion functions between pg_wchar and multi-byte streams.
  * Tatsuo Ishii
- * $Id: wchar.c,v 1.17 2001/03/22 04:00:05 momjian Exp $
+ * $Id: wchar.c,v 1.18 2001/04/19 02:34:35 ishii Exp $
  *
  * WIN1250 client encoding updated by Pavel Behal
  *
@@ -502,5 +502,5 @@ pg_mic_mblen(const unsigned char *mbstr)
 int
 pg_encoding_mblen(int encoding, const unsigned char *mbstr)
 {
-	return ((*pg_wchar_table[encoding].mblen) (mbstr));
+	return( (encoding >= 0 && encoding < sizeof(pg_wchar_table)/sizeof(pg_wchar_tbl))? ((*pg_wchar_table[encoding].mblen) (mbstr)) : ((*pg_wchar_table[SQL_ASCII].mblen) (mbstr)));
 }