diff src/ui.c @ 4201:3fd805ca2a6a v7.3.852

updated for version 7.3.852 Problem: system() breaks clipboard text. (Yukihiro Nakadaira) Solution: Use Xutf8TextPropertyToTextList(). (Christian Brabandt) Also do not put the text in the clip buffer if conversion fails.
author Bram Moolenaar <bram@vim.org>
date Thu, 07 Mar 2013 18:02:30 +0100
parents cd6c420e31d6
children fb533fb6c015
line wrap: on
line diff
--- a/src/ui.c
+++ b/src/ui.c
@@ -2119,7 +2119,13 @@ clip_x11_request_selection_cb(w, success
 	text_prop.encoding = *type;
 	text_prop.format = *format;
 	text_prop.nitems = len;
-	status = XmbTextPropertyToTextList(X_DISPLAY, &text_prop,
+#ifdef FEAT_MBYTE
+	if (*type == utf8_atom)
+	    status = Xutf8TextPropertyToTextList(X_DISPLAY, &text_prop,
+							 &text_list, &n_text);
+	else
+#endif
+	    status = XmbTextPropertyToTextList(X_DISPLAY, &text_prop,
 							 &text_list, &n_text);
 	if (status != Success || n_text < 1)
 	{