From 38351b926d63a70f0db596f8f1d25ccd2799256b Mon Sep 17 00:00:00 2001
From: "Stephen R. van den Berg" <srb@cuci.nl>
Date: Wed, 9 Sep 2009 16:22:52 +0200
Subject: [PATCH] Instead of crashing, report non-UTF8 characters in a
 supposedly UTF8 object.

Rev: lib/modules/Sql.pmod/pgsql.pike:1.71
---
 lib/modules/Sql.pmod/pgsql.pike | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/modules/Sql.pmod/pgsql.pike b/lib/modules/Sql.pmod/pgsql.pike
index 1b21329b8d..030b7c3dc7 100644
--- a/lib/modules/Sql.pmod/pgsql.pike
+++ b/lib/modules/Sql.pmod/pgsql.pike
@@ -794,8 +794,8 @@ final int _decodemsg(void|state waitforstate)
 		case BPCHAROID:
 		case VARCHAROID:
 		  value=_c.getstring(collen);
-		  if(cenc==UTF8CHARSET)
-		    value=utf8_to_string(value);
+		  if(cenc==UTF8CHARSET && catch(value=utf8_to_string(value)))
+		    ERROR("%O contains non-%s characters\n",value,UTF8CHARSET);
 		  break;
 		case CHAROID:value=atext?_c.getstring(1):_c.getbyte();
 		  break;
-- 
GitLab