diff options
| author | Rong-En Fan <rafan@FreeBSD.org> | 2007-03-03 14:18:19 +0000 |
|---|---|---|
| committer | Rong-En Fan <rafan@FreeBSD.org> | 2007-03-03 14:18:19 +0000 |
| commit | c63ddc7f8d4b22395d47676adc1809bea6bb80cb (patch) | |
| tree | 793f8278e25953da26358c210bd21fca6d51d07c /databases/freetds-devel/files/patch-src_tds_iconv.c | |
| parent | [forced commit] (diff) | |
- Update to 0.64
- Fix MSSQL 7 support, use CP1252 even though it states to use ISO-8859-1
PR: ports/107874
Submitted by: Lapo Luchini <lapo at lapo.it>
Diffstat (limited to 'databases/freetds-devel/files/patch-src_tds_iconv.c')
| -rw-r--r-- | databases/freetds-devel/files/patch-src_tds_iconv.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/databases/freetds-devel/files/patch-src_tds_iconv.c b/databases/freetds-devel/files/patch-src_tds_iconv.c new file mode 100644 index 000000000000..1899306538c2 --- /dev/null +++ b/databases/freetds-devel/files/patch-src_tds_iconv.c @@ -0,0 +1,23 @@ +--- src/tds/iconv.c.orig Sat Jan 13 16:27:13 2007 ++++ src/tds/iconv.c Sat Jan 13 16:29:24 2007 +@@ -973,13 +973,18 @@ tds_srv_charset_changed(TDSSOCKET * tds, + #if HAVE_ICONV_ALWAYS + TDSICONV *char_conv = tds->char_convs[client2server_chardata]; + +- const char *canonic_charset = tds_canonical_charset_name(charset); ++ int canonic_charset_num = tds_canonical_charset(charset); ++ const char *canonic_charset; ++ ++ if (tds->major_version >= 7 && canonic_charset_num == TDS_CHARSET_ISO_8859_1) ++ canonic_charset_num = TDS_CHARSET_CP1252; + + /* ignore request to change to unknown charset */ +- if (!canonic_charset) { ++ if (canonic_charset_num < 0) { + tdsdump_log(TDS_DBG_FUNC, "tds_srv_charset_changed: what is charset \"%s\"?\n", charset); + return; + } ++ canonic_charset = canonic_charsets[canonic_charset_num].name; + + if (strcmp(canonic_charset, char_conv->server_charset.name) == 0) + return; |
