packages (DEVEL): empathy/empathy.spec, empathy/empathy-bug585885.patch (NE...
patrys
patrys at pld-linux.org
Tue Jun 16 20:40:59 CEST 2009
Author: patrys Date: Tue Jun 16 18:40:59 2009 GMT
Module: packages Tag: DEVEL
---- Log message:
- add BR: libchamplain
---- Files affected:
packages/empathy:
empathy.spec (1.47.2.2 -> 1.47.2.3) , empathy-bug585885.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/empathy/empathy.spec
diff -u packages/empathy/empathy.spec:1.47.2.2 packages/empathy/empathy.spec:1.47.2.3
--- packages/empathy/empathy.spec:1.47.2.2 Mon Jun 15 20:31:00 2009
+++ packages/empathy/empathy.spec Tue Jun 16 20:40:53 2009
@@ -3,11 +3,12 @@
Summary(pl.UTF-8): Bardzo łatwy w użyciu klient Telepathy dla GNOME
Name: empathy
Version: 2.27.3
-Release: 1
+Release: 1.1
License: GPL v2
Group: Applications/Communications
Source0: http://ftp.gnome.org/pub/GNOME/sources/empathy/2.27/%{name}-%{version}.tar.bz2
# Source0-md5: 082624ff1ea1086b8f64658a0949fcc5
+Patch0: %{name}-bug585885.patch
URL: http://live.gnome.org/Empathy
BuildRequires: GConf2-devel >= 2.26.0
BuildRequires: autoconf >= 2.59
@@ -26,6 +27,7 @@
BuildRequires: intltool >= 0.40.0
BuildRequires: iso-codes >= 0.35
BuildRequires: libcanberra-gtk-devel >= 0.4
+BuildRequires: libchamplain-devel >= 0.3
BuildRequires: libglade2-devel >= 1:2.6.2
BuildRequires: libnotify-devel >= 0.4.4
BuildRequires: libtool
@@ -126,6 +128,7 @@
%prep
%setup -q
+%patch0 -p1
%build
%{__intltoolize}
@@ -226,6 +229,9 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.47.2.3 2009/06/16 18:40:53 patrys
+- add BR: libchamplain
+
Revision 1.47.2.2 2009/06/15 18:31:00 patrys
- 2.27.3
================================================================
Index: packages/empathy/empathy-bug585885.patch
diff -u /dev/null packages/empathy/empathy-bug585885.patch:1.1
--- /dev/null Tue Jun 16 20:40:59 2009
+++ packages/empathy/empathy-bug585885.patch Tue Jun 16 20:40:53 2009
@@ -0,0 +1,95 @@
+diff --git a/libempathy-gtk/empathy-theme-adium.c b/libempathy-gtk/empathy-theme-adium.c
+index 82384ac..321d199 100644
+--- a/libempathy-gtk/empathy-theme-adium.c
++++ b/libempathy-gtk/empathy-theme-adium.c
+@@ -500,7 +500,8 @@ theme_adium_append_message (EmpathyChatView *view,
+ }
+
+ /* Get the right html/func to add the message */
+- if (priv->last_contact == sender) {
++ func = "appendMessage";
++ if (empathy_contact_equal (priv->last_contact, sender)) {
+ func = "appendNextMessage";
+ if (empathy_contact_is_user (sender)) {
+ html = priv->out_nextcontent_html;
+@@ -512,7 +513,6 @@ theme_adium_append_message (EmpathyChatView *view,
+ }
+ }
+ if (!html) {
+- func = "appendMessage";
+ if (empathy_contact_is_user (sender)) {
+ html = priv->out_content_html;
+ len = priv->out_content_len;
+diff --git a/libempathy-gtk/empathy-theme-boxes.c b/libempathy-gtk/empathy-theme-boxes.c
+index 1991329..64d95d4 100644
+--- a/libempathy-gtk/empathy-theme-boxes.c
++++ b/libempathy-gtk/empathy-theme-boxes.c
+@@ -210,7 +210,7 @@ theme_boxes_maybe_append_header (EmpathyThemeBoxes *theme,
+ /* Only insert a header if the previously inserted block is not the same
+ * as this one.
+ */
+- if (last_contact == contact) {
++ if (empathy_contact_equal (last_contact, contact)) {
+ return;
+ }
+
+diff --git a/libempathy/empathy-contact.c b/libempathy/empathy-contact.c
+index 8e07fb9..bad6ef4 100644
+--- a/libempathy/empathy-contact.c
++++ b/libempathy/empathy-contact.c
+@@ -1082,3 +1082,40 @@ empathy_contact_set_location (EmpathyContact *contact,
+ priv->location = g_hash_table_ref (location);
+ g_object_notify (G_OBJECT (contact), "location");
+ }
++
++/**
++ * empathy_contact_equal:
++ * @contact1: an #EmpathyContact
++ * @contact2: an #EmpathyContact
++ *
++ * Returns FALSE if one of the contacts is NULL but the other is not.
++ * Otherwise returns TRUE if both pointer are equal or if they bith
++ * refer to the same id.
++ * It's only necessary to call this function if your contact objects
++ * come from logs where contacts are created dynamically and comparing
++ * pointers is not enough.
++ */
++gboolean
++empathy_contact_equal (gconstpointer contact1,
++ gconstpointer contact2)
++{
++ EmpathyContact *c1;
++ EmpathyContact *c2;
++ const gchar *id1;
++ const gchar *id2;
++
++ if ((contact1 == NULL) != (contact2 == NULL)) {
++ return FALSE;
++ }
++ if (contact1 == contact2) {
++ return TRUE;
++ }
++ c1 = EMPATHY_CONTACT (contact1);
++ c2 = EMPATHY_CONTACT (contact2);
++ id1 = empathy_contact_get_id (c1);
++ id2 = empathy_contact_get_id (c2);
++ if (!tp_strdiff (id1, id2)) {
++ return TRUE;
++ }
++ return FALSE;
++}
+diff --git a/libempathy/empathy-contact.h b/libempathy/empathy-contact.h
+index f441876..f888313 100644
+--- a/libempathy/empathy-contact.h
++++ b/libempathy/empathy-contact.h
+@@ -125,7 +125,9 @@ gboolean empathy_avatar_save_to_file (EmpathyAvatar *avatar,
+
+ GHashTable * empathy_contact_get_location (EmpathyContact *contact);
+ void empathy_contact_set_location (EmpathyContact *contact,
+- GHashTable *location);
++ GHashTable *location);
++gboolean empathy_contact_equal (gconstpointer contact1,
++ gconstpointer contact2);
+
+ G_END_DECLS
+
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/empathy/empathy.spec?r1=1.47.2.2&r2=1.47.2.3&f=u
More information about the pld-cvs-commit
mailing list