changeset 32408:16b33ffd75f8

merge of '1ca17dd26ee879f7580c72b03d018e444e0a5144' and '9000557e8a6b7649547a10cfc0fe85dbb8ce661d'
author masca@cpw.pidgin.im
date Thu, 25 Aug 2011 04:40:34 +0000
parents d3d41ba0c3b8 (diff) d3e36e7af9e7 (current diff)
children e86e00f77ca4
files
diffstat 2 files changed, 7 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/libpurple/dnsquery.c	Thu Aug 25 04:15:16 2011 +0000
+++ b/libpurple/dnsquery.c	Thu Aug 25 04:40:34 2011 +0000
@@ -297,6 +297,10 @@
 		}
 		rc = read(child_in, &dns_params, sizeof(dns_params_t));
 		if (rc < 0) {
+			if (errno == EINTR || errno == EAGAIN || errno == EWOULDBLOCK) {
+				/* Try again */
+				continue;
+			}
 			fprintf(stderr, "dns[%d]: Error: Could not read dns_params: "
 					"%s\n", getpid(), strerror(errno));
 			break;
--- a/pidgin/gtkutils.c	Thu Aug 25 04:15:16 2011 +0000
+++ b/pidgin/gtkutils.c	Thu Aug 25 04:40:34 2011 +0000
@@ -3246,9 +3246,9 @@
 	{
 		gchar *escaped = g_shell_quote(uri);
 		gchar *param = g_strconcat("/select,\"", uri, "\"", NULL);
-		gchar *wc_param = g_utf8_to_utf16(param, -1, NULL, NULL, NULL);
-
-		code = (int)ShellExecuteW(NULL, "OPEN", L"explorer.exe", wc_param, NULL, SW_NORMAL);
+		wchar_t *wc_param = g_utf8_to_utf16(param, -1, NULL, NULL, NULL);
+
+		code = (int)ShellExecuteW(NULL, L"OPEN", L"explorer.exe", wc_param, NULL, SW_NORMAL);
 
 		g_free(wc_param);
 		g_free(param);