summaryrefslogtreecommitdiffstats
path: root/deps/virtuoso-ose/virtuoso-opensource-6.1.3.unicode.patch
diff options
context:
space:
mode:
Diffstat (limited to 'deps/virtuoso-ose/virtuoso-opensource-6.1.3.unicode.patch')
-rw-r--r--deps/virtuoso-ose/virtuoso-opensource-6.1.3.unicode.patch16
1 files changed, 16 insertions, 0 deletions
diff --git a/deps/virtuoso-ose/virtuoso-opensource-6.1.3.unicode.patch b/deps/virtuoso-ose/virtuoso-opensource-6.1.3.unicode.patch
new file mode 100644
index 0000000..6aa5e5a
--- /dev/null
+++ b/deps/virtuoso-ose/virtuoso-opensource-6.1.3.unicode.patch
@@ -0,0 +1,16 @@
+--- libsrc/Wi/xqf.c 3 Mar 2011 11:56:45 -0000 1.21.2.9
++++ libsrc/Wi/xqf.c 26 Aug 2011 19:34:56 -0000 1.21.2.12
+@@ -3520,6 +3552,12 @@
+ desc = xqf_str_parser_descs + desc_idx;
+ if (DV_DB_NULL == arg_dtp)
+ return NEW_DB_NULL;
++ /* if we have wide and we want typed string we do utf8, cast do to default charset so we do not do it */
++ if (DV_WIDE == arg_dtp && desc->p_dest_dtp == DV_STRING)
++ {
++ res = box_wide_as_utf8_char (arg, box_length (arg) / sizeof (wchar_t) - 1, DV_STRING);
++ goto res_ready;
++ }
+ if (DV_STRING != arg_dtp)
+ {
+ caddr_t err = NULL;
+