rpms/xchat/devel xchat-2.4.4-multiline-messages.patch, NONE, 1.1 xchat-2.4.4-redhat-desktop.patch, NONE, 1.1 .cvsignore, 1.18, 1.19 sources, 1.18, 1.19 xchat.spec, 1.36, 1.37 xchat-2.4.2-multiline-messages.patch, 1.1, NONE xchat-2.4.3-redhat-desktop.patch, 1.1, NONE

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Tue Jun 28 13:21:14 UTC 2005


Author: caillon

Update of /cvs/dist/rpms/xchat/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv9307

Modified Files:
	.cvsignore sources xchat.spec 
Added Files:
	xchat-2.4.4-multiline-messages.patch 
	xchat-2.4.4-redhat-desktop.patch 
Removed Files:
	xchat-2.4.2-multiline-messages.patch 
	xchat-2.4.3-redhat-desktop.patch 
Log Message:
* Sun Jun 26 2005 Christopher Aillon <caillon at redhat.com> 1:2.4.4-1
- Update to xchat-2.4.4


xchat-2.4.4-multiline-messages.patch:
 ctcp.c      |   32 +++++++++++++++-------------
 proto-irc.c |   68 ++++++++++++++++++++++++++++++++++++++++++++++++++----------
 2 files changed, 75 insertions(+), 25 deletions(-)

--- NEW FILE xchat-2.4.4-multiline-messages.patch ---
--- xchat-2.4.4/src/common/proto-irc.c.multiline	2005-06-27 08:35:54.000000000 -0400
+++ xchat-2.4.4/src/common/proto-irc.c	2005-06-27 08:36:25.000000000 -0400
@@ -824,6 +824,10 @@
 	}
 	if (!strcmp ("PRIVMSG", type))
 	{
+#define M_QUOTE '\020'
+#define X_DELIM '\001'
+#define X_QUOTE '\134'
+
 		char *to = word[3];
 		int len;
 		int id = FALSE;	/* identified */
@@ -842,17 +846,59 @@
 					text++;
 			}
 			len = strlen (text);
-			if (text[0] == 1 && text[len - 1] == 1)	/* ctcp */
-			{
-				text[len - 1] = 0;
-				text++;
-				if (strncasecmp (text, "ACTION", 6) != 0)
-					flood_check (nick, ip, serv, sess, 0);
-				if (strncasecmp (text, "DCC ", 4) == 0)
-					/* redo this with handle_quotes TRUE */
-					process_data_init (word[1], word_eol[1], word, word_eol, TRUE);
-				ctcp_handle (sess, to, nick, text, word, word_eol);
-			} else
+
+			{ /* find and dequote low-level CTCP quoting */
+				char	*ptr = text;
+
+				while ((ptr = strchr(ptr, M_QUOTE)) != NULL) {
+					switch(*(ptr+1)) {
+					  case 'r':
+						*(ptr+1) = '\r';
+						break;
+					  case 'n':
+						*(ptr+1) = '\n';
+						break;
+					  case '0':
+						*(ptr+1) = 0;
+						break;
+					}
+					memmove(ptr, ptr+1, strlen(ptr+1)+1);
+					ptr++;
+				}
+			}
+
+			{ /* find, handle, and remove CTCP messages */
+				char	*start, *end;
+
+				while (((start = strchr(text, X_DELIM)) != NULL) && ((end = strchr(start+1, X_DELIM)) != NULL)) {
+					*end = 0;
+
+					if (strncasecmp(start+1, "ACTION ", sizeof("ACTION ")-1) != 0)
+						flood_check(nick, ip, serv, sess, 0);
+					if (strncasecmp(text, "DCC ", sizeof("DCC ")-1) == 0)
+						/* redo this with handle_quotes TRUE */
+						process_data_init (word[1], word_eol[1], word, word_eol, TRUE);
+
+					{ /* inline CTCP dequote */
+						char	*ptr = start+1;
+
+						while ((ptr = strchr(ptr, X_QUOTE)) != NULL) {
+							switch(*(ptr+1)) {
+							  case 'a':
+								*(ptr+1) = X_DELIM;
+								break;
+							}
+							memmove(ptr, ptr+1, strlen(ptr+1)+1);
+							ptr++;
+						}
+					}
+
+					ctcp_handle(sess, to, nick, start+1, word, word_eol);
+					memmove(start, end+1, strlen(end+1)+1);
+				}
+			}
+
+			if (*text != 0)
 			{
 				if (is_channel (serv, to))
 				{
--- xchat-2.4.4/src/common/ctcp.c.multiline	2005-06-27 08:35:44.000000000 -0400
+++ xchat-2.4.4/src/common/ctcp.c	2005-06-27 08:39:15.000000000 -0400
@@ -58,13 +58,15 @@
 	struct popup *pop;
 	GSList *list = ctcp_list;
 
-	po = strchr (ctcp, '\001');
-	if (po)
-		*po = 0;
-
-	po = strchr (word_eol[5], '\001');
-	if (po)
-		*po = 0;
+// handled by PRIVMSG handler
+//	po = strchr (ctcp, '\001');
+//	if (po)
+//		*po = 0;
+
+// this appears to be superfluous, but I am not sure; leaving it uncommented causes breakage
+//	po = strchr (word_eol[5], '\001');
+//	if (po)
+//		*po = 0;
 
 	while (list)
 	{
@@ -129,7 +131,7 @@
 
 	if (!strcasecmp (msg, "VERSION") && !prefs.hidever)
 	{
-		snprintf (outbuf, sizeof (outbuf), "VERSION xchat "VERSION" %s",
+		snprintf (outbuf, sizeof (outbuf), "VERSION xchat:"VERSION":%s",
 					 get_cpu_str ());
 		serv->p_nctcp (serv, nick, outbuf);
 	}
@@ -138,9 +140,10 @@
 	{
 		if (!strncasecmp (msg, "SOUND", 5))
 		{
-			po = strchr (word[5], '\001');
-			if (po)
-				po[0] = 0;
+// handled by PRIVMSG handler
+//			po = strchr (word[5], '\001');
+//			if (po)
+//				po[0] = 0;
 
 			if (is_channel (sess->server, to))
 			{
@@ -168,9 +171,10 @@
 	}
 
 generic:
-	po = strchr (msg, '\001');
-	if (po)
-		po[0] = 0;
+// handled by PRIVMSG handler
+//	po = strchr (msg, '\001');
+//	if (po)
+//		po[0] = 0;
 
 	if (!is_channel (sess->server, to))
 	{

xchat-2.4.4-redhat-desktop.patch:
 xchat.desktop |   19 +++----------------
 1 files changed, 3 insertions(+), 16 deletions(-)

--- NEW FILE xchat-2.4.4-redhat-desktop.patch ---
--- xchat-2.4.4/xchat.desktop.pre	2005-06-27 02:58:18.000000000 -0400
+++ xchat-2.4.4/xchat.desktop	2005-06-27 08:25:51.000000000 -0400
@@ -1,22 +1,9 @@
 [Desktop Entry]
 Encoding=UTF-8
-Name=XChat IRC
-Name[zh_TW]=網路清談
-Comment[de]=IRC-Client
-Comment[es]=Aplicación de IRC
-Comment[fi]=IRC-sovellus
-Comment[fr]=Client IRC
-Comment[hu]=IRC-kliens
-Comment[lt]=IRC klientas
-Comment[no]=IRC-klient
-Comment[pt_BR]=Cliente de IRC
-Comment[sl]=Odjemalec IRC
-Comment[sv]=IRC-klient
-Comment[ro]=Client de IRC
-Comment[zh_TW]=X-Chat 聊天程式
-Comment=IRC Client
+Name=IRC
+Comment=X-Chat
 Exec=xchat
 Icon=xchat.png
 Terminal=false
 Type=Application
-Categories=Application;Network;
+Categories=X-Red-Hat-Extras;Application;Network;


Index: .cvsignore
===================================================================
RCS file: /cvs/dist/rpms/xchat/devel/.cvsignore,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- .cvsignore	4 Apr 2005 02:41:05 -0000	1.18
+++ .cvsignore	28 Jun 2005 13:21:11 -0000	1.19
@@ -1 +1,2 @@
 xchat-2.4.3.tar.bz2
+xchat-2.4.4.tar.bz2


Index: sources
===================================================================
RCS file: /cvs/dist/rpms/xchat/devel/sources,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- sources	4 Apr 2005 02:41:05 -0000	1.18
+++ sources	28 Jun 2005 13:21:11 -0000	1.19
@@ -1 +1 @@
-bdcb196b70c93a185fff485fe9af9815  xchat-2.4.3.tar.bz2
+c853dbc73c3ba5127388584381bd4dce  xchat-2.4.4.tar.bz2


Index: xchat.spec
===================================================================
RCS file: /cvs/dist/rpms/xchat/devel/xchat.spec,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- xchat.spec	16 May 2005 07:06:34 -0000	1.36
+++ xchat.spec	28 Jun 2005 13:21:11 -0000	1.37
@@ -7,23 +7,21 @@
 
 Summary:   A popular and easy to use graphical IRC (chat) client
 Name:      xchat
-Version:   2.4.3
-Release:   3
+Version:   2.4.4
+Release:   1
 Epoch:     1
 Group:     Applications/Internet
 License:   GPL
 URL:       http://www.xchat.org
 Source:    http://www.xchat.org/files/source/2.0/xchat-%{version}.tar.bz2
 Buildroot: %{_tmppath}/%{name}-%{version}-root
-
 # Patches 0-9 reserved for official xchat.org patches
-Patch10: xchat-2.4.3-redhat-desktop.patch
+Patch10: xchat-2.4.4-redhat-desktop.patch
 Patch12: xchat-1.8.7-use-sysconf-to-detect-cpus.patch
 Patch19: xchat-2.0.2-freenode.patch
 Patch22: xchat-2.0.9-simplify-to-use-gnome-open-for-default-webbrowser.patch
 Patch23: xchat-2.0.9-simplify-to-use-htmlview-for-default-webbrowser.patch
-Patch30: xchat-2.4.2-multiline-messages.patch
-Patch31: xchat-2.4.2-nickmenu-away-msg.patch
+Patch30: xchat-2.4.4-multiline-messages.patch
 Patch32: xchat-2.4.3-lib64.patch
 Patch33: xchat-2.4.3-im_context_filter_keypress.patch
 
@@ -51,7 +49,6 @@
 %patch23 -p1 -b .simplify-to-use-htmlview-for-default-webbrowser
 %endif
 %patch30 -p1 -b .multiline-messages
-%patch31 -p0 -b .nickmenu-away-msg
 %patch32 -p1 -b .lib64
 %patch33 -p1 -b .im_context_filter_keypress
 
@@ -115,6 +112,9 @@
 rm -rf $RPM_BUILD_ROOT
 
 %changelog
+* Sun Jun 26 2005 Christopher Aillon <caillon at redhat.com> 1:2.4.4-1
+- Update to xchat-2.4.4
+
 * Sun May 15 2005 Warren Togami <wtogami at redhat.com> 1:2.4.3-3
 - Prevent interception of down arrow during Input Method (#144588 tagoh)
 


--- xchat-2.4.2-multiline-messages.patch DELETED ---


--- xchat-2.4.3-redhat-desktop.patch DELETED ---




More information about the fedora-cvs-commits mailing list