changeset 21302:fb2310c914a2

merge of 'e3fd21e6dabb99e5604e8337380353fcbe1a7279' and 'fed31c7f5e2c39b8ff79e0d2f07bda3c249d1a49'
author Stu Tomlinson <stu@nosnilmot.com>
date Sat, 10 Nov 2007 16:39:18 +0000
parents 39231317310a (diff) 283f8bf540b3 (current diff)
children a9482e431e43 5cca0d7d9081
files libpurple/purple.h
diffstat 9 files changed, 119 insertions(+), 96 deletions(-) [+]
line wrap: on
line diff
--- a/config.h.mingw	Sat Nov 10 15:37:36 2007 +0000
+++ b/config.h.mingw	Sat Nov 10 16:39:18 2007 +0000
@@ -378,7 +378,7 @@
 
 /* Version number of package */
 #define VERSION "@VERSION@"
-#define DISPLAY_VERSION "@VERSION@"
+#define DISPLAY_VERSION "@DISPLAY_VERSION@"
 
 /* Define to 1 if your processor stores words with the most significant byte
    first (like Motorola and SPARC, unlike Intel and VAX). */
--- a/configure.ac	Sat Nov 10 15:37:36 2007 +0000
+++ b/configure.ac	Sat Nov 10 16:39:18 2007 +0000
@@ -2003,9 +2003,12 @@
 if test "x$enable_plugins" = "xyes" ; then
 	AC_DEFINE(PURPLE_PLUGINS, 1, [Define if plugins are enabled.])
 	AM_CONDITIONAL(PLUGINS, true)
+	PLUGINS_DEFINE="#define PURPLE_PLUGINS 1"
 else
 	AM_CONDITIONAL(PLUGINS, false)
+	PLUGINS_DEFINE="#undef PURPLE_PLUGINS"
 fi
+AC_SUBST(PLUGINS_DEFINE)
 
 dnl #######################################################################
 dnl # Check for Cyrus-SASL (for Jabber)
@@ -2272,6 +2275,7 @@
 		   libpurple/protocols/yahoo/Makefile
 		   libpurple/protocols/zephyr/Makefile
 		   libpurple/tests/Makefile
+		   libpurple/purple.h
 		   libpurple/version.h
 		   share/Makefile
 		   share/sounds/Makefile
--- a/libpurple/Makefile.am	Sat Nov 10 15:37:36 2007 +0000
+++ b/libpurple/Makefile.am	Sat Nov 10 16:39:18 2007 +0000
@@ -6,6 +6,7 @@
 		purple-send \
 		purple-send-async \
 		purple-url-handler \
+		purple.h.in \
 		purple.pc.in \
 		purple-uninstalled.pc.in \
 		version.h.in \
@@ -134,7 +135,7 @@
 	xmlnode.h \
 	whiteboard.h
 
-BUILT_SOURCES = version.h
+BUILT_SOURCES = purple.h version.h
 
 if ENABLE_DBUS
 
--- a/libpurple/protocols/myspace/Makefile.am	Sat Nov 10 15:37:36 2007 +0000
+++ b/libpurple/protocols/myspace/Makefile.am	Sat Nov 10 16:39:18 2007 +0000
@@ -38,5 +38,6 @@
 
 AM_CPPFLAGS = \
 	-I$(top_srcdir)/libpurple \
+	-I$(top_builddir)/libpurple \
 	$(GLIB_CFLAGS) \
 	$(DEBUG_CFLAGS)
--- a/libpurple/purple.h	Sat Nov 10 15:37:36 2007 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-/**
- * @file purple.h  Header files and defines
- * This file contains all the necessary preprocessor directives to include
- * libpurple's headers and other preprocessor directives required for plugins
- * or UIs to build.  Inlcuding this file eliminates the need to directly
- * include any other libpurple files.  It will still be necessary for plugins
- * to define @c PURPLE_PLUGINS before including this header.
- *
- * @ingroup core libpurple
- */
-
-/* purple
- *
- * Purple is the legal property of its developers, whose names are too numerous
- * to list here.  Please refer to the COPYRIGHT file distributed with this
- * source distribution.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
- */
-#ifndef _PURPLE_H
-#define _PURPLE_H
-
-#ifndef G_GNUC_NULL_TERMINATED
-#	if     __GNUC__ >= 4
-#		define G_GNUC_NULL_TERMINATED __attribute__((__sentinel__))
-#	else
-#		define G_GNUC_NULL_TERMINATED
-#	endif
-#endif
-
-#include <account.h>
-#include <accountopt.h>
-#include <blist.h>
-#include <buddyicon.h>
-#include <certificate.h>
-#include <cipher.h>
-#include <circbuffer.h>
-#include <cmds.h>
-#include <connection.h>
-#include <conversation.h>
-#include <core.h>
-#include <debug.h>
-#include <desktopitem.h>
-#include <dnsquery.h>
-#include <dnssrv.h>
-#include <eventloop.h>
-#include <ft.h>
-#include <idle.h>
-#include <imgstore.h>
-#include <log.h>
-#include <mime.h>
-#include <nat-pmp.h>
-#include <network.h>
-#include <ntlm.h>
-#include <notify.h>
-#include <plugin.h>
-#include <pluginpref.h>
-#include <pounce.h>
-#include <prefs.h>
-#include <privacy.h>
-#include <proxy.h>
-#include <prpl.h>
-#include <request.h>
-#include <roomlist.h>
-#include <savedstatuses.h>
-#include <server.h>
-#include <signals.h>
-#include <status.h>
-#include <stringref.h>
-#include <stun.h>
-#include <sound.h>
-#include <sslconn.h>
-#include <upnp.h>
-#include <util.h>
-#include <value.h>
-#include <version.h>
-#include <xmlnode.h>
-#include <whiteboard.h>
-
-#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libpurple/purple.h.in	Sat Nov 10 16:39:18 2007 +0000
@@ -0,0 +1,96 @@
+/**
+ * @file purple.h  Header files and defines
+ * This file contains all the necessary preprocessor directives to include
+ * libpurple's headers and other preprocessor directives required for plugins
+ * or UIs to build.  Inlcuding this file eliminates the need to directly
+ * include any other libpurple files.
+ *
+ * @ingroup core libpurple
+ */
+
+/* purple
+ *
+ * Purple is the legal property of its developers, whose names are too numerous
+ * to list here.  Please refer to the COPYRIGHT file distributed with this
+ * source distribution.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
+ */
+
+#ifndef _PURPLE_PURPLE_H_
+#define _PURPLE_PURPLE_H_
+
+#include <glib.h>
+
+#ifndef G_GNUC_NULL_TERMINATED
+#	if     __GNUC__ >= 4
+#		define G_GNUC_NULL_TERMINATED __attribute__((__sentinel__))
+#	else
+#		define G_GNUC_NULL_TERMINATED
+#	endif
+#endif
+
+@PLUGINS_DEFINE@
+
+#include <account.h>
+#include <accountopt.h>
+#include <blist.h>
+#include <buddyicon.h>
+#include <certificate.h>
+#include <cipher.h>
+#include <circbuffer.h>
+#include <cmds.h>
+#include <connection.h>
+#include <conversation.h>
+#include <core.h>
+#include <debug.h>
+#include <desktopitem.h>
+#include <dnsquery.h>
+#include <dnssrv.h>
+#include <eventloop.h>
+#include <ft.h>
+#include <idle.h>
+#include <imgstore.h>
+#include <log.h>
+#include <mime.h>
+#include <nat-pmp.h>
+#include <network.h>
+#include <ntlm.h>
+#include <notify.h>
+#include <plugin.h>
+#include <pluginpref.h>
+#include <pounce.h>
+#include <prefs.h>
+#include <privacy.h>
+#include <proxy.h>
+#include <prpl.h>
+#include <request.h>
+#include <roomlist.h>
+#include <savedstatuses.h>
+#include <server.h>
+#include <signals.h>
+#include <status.h>
+#include <stringref.h>
+#include <stun.h>
+#include <sound.h>
+#include <sslconn.h>
+#include <upnp.h>
+#include <util.h>
+#include <value.h>
+#include <version.h>
+#include <xmlnode.h>
+#include <whiteboard.h>
+
+#endif
--- a/libpurple/util.c	Sat Nov 10 15:37:36 2007 +0000
+++ b/libpurple/util.c	Sat Nov 10 16:39:18 2007 +0000
@@ -1555,7 +1555,11 @@
 							if(*q == '\'' || *q == '\"')
 								q++;
 							while(*q && *q != '\"' && *q != '\'' && *q != ' ') {
-								url = g_string_append_c(url, *q);
+								int len;
+								if ((*q == '&') && (purple_markup_unescape_entity(q, &len) == NULL))
+									url = g_string_append(url, "&amp;");
+								else
+									url = g_string_append_c(url, *q);
 								q++;
 							}
 							p = q;
--- a/libpurple/win32/global.mak	Sat Nov 10 15:37:36 2007 +0000
+++ b/libpurple/win32/global.mak	Sat Nov 10 16:39:18 2007 +0000
@@ -48,6 +48,7 @@
 PIDGIN_CONFIG_H := $(PIDGIN_TREE_TOP)/config.h
 PURPLE_CONFIG_H := $(PIDGIN_TREE_TOP)/config.h
 PIDGIN_IDLETRACK_DLL := $(PIDGIN_IDLETRACK_TOP)/idletrack.dll
+PURPLE_PURPLE_H := $(PURPLE_TOP)/purple.h
 PURPLE_VERSION_H := $(PURPLE_TOP)/version.h
 PURPLE_DLL := $(PURPLE_TOP)/libpurple.dll
 PURPLE_PERL_DLL := $(PURPLE_PERL_TOP)/perl.dll
@@ -70,6 +71,11 @@
   cat $(PIDGIN_TREE_TOP)/VERSION \
 )
 PURPLE_VERSION := $(PIDGIN_VERSION)
+ifdef EXTRAVERSION
+DISPLAY_VERSION := $(PIDGIN_VERSION)-$(EXTRAVERSION)
+else
+DISPLAY_VERSION := $(PIDGIN_VERSION)
+endif
 
 DEFINES += -DHAVE_CONFIG_H
 
--- a/libpurple/win32/targets.mak	Sat Nov 10 15:37:36 2007 +0000
+++ b/libpurple/win32/targets.mak	Sat Nov 10 16:39:18 2007 +0000
@@ -6,7 +6,10 @@
 #
 
 $(PIDGIN_CONFIG_H): $(PIDGIN_CONFIG_H).mingw $(PIDGIN_TREE_TOP)/configure.ac
-	sed -e 's/@VERSION@/$(PIDGIN_VERSION)/' $@.mingw > $@
+	sed -e 's/@VERSION@/$(PIDGIN_VERSION)/; s/@DISPLAY_VERSION@/$(DISPLAY_VERSION)/' $@.mingw > $@
+
+$(PURPLE_PURPLE_H): $(PURPLE_PURPLE_H).in
+	sed -e 's/@PLUGINS_DEFINE@/#define PURPLE_PLUGINS 1/; $@.in > $@
 
 $(PURPLE_VERSION_H): $(PURPLE_VERSION_H).in $(PIDGIN_TREE_TOP)/configure.ac
 	cp $@.in $@