"William ZHANG" <uniware@zedware.org> wrote
> lc_messages = 'Chinese_People''s Republic of China.936' # locale
> for
> system error message
>
Diff current version vs. some earlier version, you see this:
/* * signal handler in case we are interrupted.
@@ -1951,12 +2035,12 @@ escape_quotes(const char *src){ int len = strlen(src), i, j;
- char *result = xmalloc(len * 2 + 1);
+ char *result = pg_malloc(len * 2 + 1);
for (i = 0, j = 0; i < len; i++) {
- if (src[i] == '\'' || src[i] == '\\')
- result[j++] = '\\';
+ if (SQL_STR_DOUBLE(src[i]))
+ result[j++] = src[i]; result[j++] = src[i]; }
So the problem is this line:
result[j++] = src[i];
That is, use the old line then the 'People\'s republic of China' string gets
right. But I am quite sure if revoke this will affect other things.
Regards,
Qingqing