Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Apr 2003 22:01:18 +0900 (JST)
From:      Alexander Nedotsukov <bland@mail.ru>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        marcus@FreeBSD.org
Subject:   ports/50675: gaim/irc i18n fix
Message-ID:  <200304071301.h37D1IG3063401@bbnest.dyndns.org>
Resent-Message-ID: <200304071310.h37DADoM091435@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         50675
>Category:       ports
>Synopsis:       gaim/irc i18n fix
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Apr 07 06:10:10 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     Alexander Nedotsukov
>Release:        FreeBSD 5.0-CURRENT i386
>Organization:
>Environment:
System: FreeBSD bbnest.dyndns.org 5.0-CURRENT FreeBSD 5.0-CURRENT #2: Sun Mar 23 18:09:30 JST 2003 bland@bbnest.dyndns.org:/usr/obj/usr/src/sys/SU i386


	
>Description:
Gaim irc protocol module misses i18n conversion for topic messages.
Authors mailed.
	
>How-To-Repeat:
Attach to any irc server. Join to channel where you be able to change the topic.
Try to set topic to something non-latin.
	
>Fix:
apply the patch attaced
	

--- patch-irc.c begins here ---
--- irc.c.orig	Wed Mar 12 11:50:45 2003
+++ irc.c	Wed Mar 12 12:20:56 2003
@@ -699,9 +699,11 @@
 
 	if ((c = irc_find_chat(gc, text))) {
 		char buf[IRC_BUF_LEN];
-		gaim_chat_set_topic(GAIM_CHAT(c), NULL, po);
+		char *utf8 = irc_recv_convert(gc, po);
+		gaim_chat_set_topic(GAIM_CHAT(c), NULL, utf8);
 		g_snprintf(buf, sizeof(buf), _("<B>%s has changed the topic to: %s</B>"),
-			   text, po);
+			   text, utf8);
+		g_free(utf8);
 
 		gaim_conversation_write(c, NULL, buf, -1, WFLAG_SYSTEM, time(NULL));
 	}
@@ -1616,12 +1618,14 @@
 {
 	struct gaim_conversation *c = irc_find_chat(gc, word[3]);
 	char *topic = *word_eol[4] == ':' ? word_eol[4] + 1 : word_eol[4];
-	char buf[IRC_BUF_LEN];
 
 	if (c) {
-		gaim_chat_set_topic(GAIM_CHAT(c), nick, topic);
+		char buf[IRC_BUF_LEN];
+		char *utf8 = irc_recv_convert(gc, topic);
+		gaim_chat_set_topic(GAIM_CHAT(c), nick, utf8);
 		g_snprintf(buf, sizeof(buf),
-				   _("<B>%s has changed the topic to: %s</B>"), nick, topic);
+				   _("<B>%s has changed the topic to: %s</B>"), nick, utf8);
+		g_free(utf8);
 
 		gaim_conversation_write(c, NULL, buf, -1, WFLAG_SYSTEM, time(NULL));
 	}
--- patch-irc.c ends here ---



>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304071301.h37D1IG3063401>