[118243] users/devans/GNOME-3/stable/dports
devans at macports.org
devans at macports.org
Wed Mar 26 20:29:11 PDT 2014
Revision: 118243
https://trac.macports.org/changeset/118243
Author: devans at macports.org
Date: 2014-03-26 20:29:11 -0700 (Wed, 26 Mar 2014)
Log Message:
-----------
GNOME-3/stable: rebuild dependents of json-glib due to library reversioning.
Modified Paths:
--------------
users/devans/GNOME-3/stable/dports/devel/zeitgeist/Portfile
users/devans/GNOME-3/stable/dports/gnome/frogr/Portfile
users/devans/GNOME-3/stable/dports/gnome/gfbgraph/Portfile
users/devans/GNOME-3/stable/dports/gnome/libsocialweb/Portfile
users/devans/GNOME-3/stable/dports/graphics/clutter/Portfile
Added Paths:
-----------
users/devans/GNOME-3/stable/dports/devel/zeitgeist/
users/devans/GNOME-3/stable/dports/gnome/frogr/
users/devans/GNOME-3/stable/dports/gnome/frogr/files/patch-configure.ac.diff
users/devans/GNOME-3/stable/dports/gnome/gfbgraph/
users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile
users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile-3.12.0
users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/files/
users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/files/patch-alarm.diff
users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/files-3.12.0/
users/devans/GNOME-3/stable/dports/gnome/libsocialweb/
users/devans/GNOME-3/stable/dports/graphics/clutter/
Removed Paths:
-------------
users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile-3.11.92
users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/files/
Property changes on: users/devans/GNOME-3/stable/dports/devel/zeitgeist
___________________________________________________________________
Added: svn:mergeinfo
+ /branches/mld-qt-481/dports/devel/zeitgeist:92720,92813,92891,92963,93522,93556,93699,93743,93771-93773,93806,93817-93818,93856
/users/cal/ports/devel/zeitgeist:96570-97031
Modified: users/devans/GNOME-3/stable/dports/devel/zeitgeist/Portfile
===================================================================
--- trunk/dports/devel/zeitgeist/Portfile 2014-03-26 23:00:31 UTC (rev 118238)
+++ users/devans/GNOME-3/stable/dports/devel/zeitgeist/Portfile 2014-03-27 03:29:11 UTC (rev 118243)
@@ -5,7 +5,7 @@
name zeitgeist
version 0.9.14
-revision 1
+revision 2
license LGPL-2.1
set branch [join [lrange [split ${version} .] 0 1] .]
description Zeitgeist is a service which logs the users's activities and \
Property changes on: users/devans/GNOME-3/stable/dports/gnome/frogr
___________________________________________________________________
Added: svn:mergeinfo
+ /branches/mld-qt-481/dports/gnome/frogr:92720,92813,92891,92963,93522,93556,93699,93743,93771-93773,93806,93817-93818,93856
/users/rmstonecipher/gnome/frogr:102363-103172
Modified: users/devans/GNOME-3/stable/dports/gnome/frogr/Portfile
===================================================================
--- trunk/dports/gnome/frogr/Portfile 2014-03-26 23:00:31 UTC (rev 118238)
+++ users/devans/GNOME-3/stable/dports/gnome/frogr/Portfile 2014-03-27 03:29:11 UTC (rev 118243)
@@ -5,6 +5,7 @@
name frogr
version 0.9
+revision 1
license GPL-3
set branch [join [lrange [split ${version} .] 0 1] .]
description Flickr Remote Organizer for GNOME.
@@ -44,7 +45,8 @@
port:yelp \
port:epiphany
-patchfiles patch-export-dynamic-Makefile.am.diff
+patchfiles patch-configure.ac.diff \
+ patch-export-dynamic-Makefile.am.diff
# reconfigure with our intltool.m4
Added: users/devans/GNOME-3/stable/dports/gnome/frogr/files/patch-configure.ac.diff
===================================================================
--- users/devans/GNOME-3/stable/dports/gnome/frogr/files/patch-configure.ac.diff (rev 0)
+++ users/devans/GNOME-3/stable/dports/gnome/frogr/files/patch-configure.ac.diff 2014-03-27 03:29:11 UTC (rev 118243)
@@ -0,0 +1,11 @@
+--- configure.ac.orig 2014-03-26 16:55:11.000000000 -0700
++++ configure.ac 2014-03-26 16:55:29.000000000 -0700
+@@ -4,7 +4,7 @@
+ AC_PROG_RANLIB
+ AC_CONFIG_HEADERS([config.h])
+ IT_PROG_INTLTOOL([0.35.0])
+-YELP_HELP_INIT([3.1.1])
++YELP_HELP_INIT
+
+ # Support silent build rules, requires at least automake-1.11. Disable
+ # by either passing --disable-silent-rules to configure or passing V=1
Property changes on: users/devans/GNOME-3/stable/dports/gnome/gfbgraph
___________________________________________________________________
Added: svn:mergeinfo
+ /branches/mld-qt-481/dports/gnome/gfbgraph:92720,92813,92891,92963,93522,93556,93699,93743,93771-93773,93806,93817-93818,93856
/users/rmstonecipher/gnome/gfbgraph:102363-103172
Modified: users/devans/GNOME-3/stable/dports/gnome/gfbgraph/Portfile
===================================================================
--- trunk/dports/gnome/gfbgraph/Portfile 2014-03-26 23:00:31 UTC (rev 118238)
+++ users/devans/GNOME-3/stable/dports/gnome/gfbgraph/Portfile 2014-03-27 03:29:11 UTC (rev 118243)
@@ -5,6 +5,7 @@
name gfbgraph
version 0.2.2
+revision 1
license GPL-2.1
set branch [join [lrange [split ${version} .] 0 1] .]
description A GObject library for Facebook Graph API.
Added: users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile
===================================================================
--- users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile (rev 0)
+++ users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile 2014-03-27 03:29:11 UTC (rev 118243)
@@ -0,0 +1,72 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
+# $Id: Portfile 117360 2014-02-24 01:59:47Z devans at macports.org $
+
+PortSystem 1.0
+
+name gnome-online-accounts
+version 3.8.5
+revision 1
+license LGPL-2
+set branch [join [lrange [split ${version} .] 0 1] .]
+description Single sign-on framework for GNOME
+long_description \
+ ${description}
+maintainers devans openmaintainer
+categories gnome
+platforms darwin
+homepage https://wiki.gnome.org/Projects/GnomeOnlineAccounts
+master_sites gnome:sources/${name}/${branch}/
+
+use_xz yes
+
+checksums rmd160 21889d886fa262e536929ecb6905cfcd3f50a462 \
+ sha256 34d6fbc33bda4c7bba8aa52343ebe1eb8afe1033097c10a2d9979c0a99593e5d
+
+depends_build port:pkgconfig \
+ port:intltool \
+ port:gtk-doc \
+ port:gnome-common
+
+depends_lib port:gtk3 \
+ path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3 \
+ port:libsoup \
+ port:json-glib \
+ port:rest \
+ port:libsecret \
+ port:libxml2 \
+ port:gobject-introspection \
+ port:gcr
+
+patchfiles patch-alarm.diff
+
+# autoreconf with MacPorts intltool.m4
+
+use_autoreconf yes
+autoreconf.args -fvi
+
+configure.cflags-append -Wno-format-nonliteral
+configure.args --enable-introspection=yes
+
+# TODO: Check ${configure.cxx_stdlib} directly once MacPorts 2.3 is released
+platform darwin {
+ set cxxstdlib {}
+
+ if {[info exists configure.cxx_stdlib] &&
+ ${configure.cxx_stdlib} ne {} &&
+ [string match *clang* ${configure.cxx}]} {
+ set cxxstdlib ${configure.cxx_stdlib}
+ } elseif {[string match *clang* ${configure.cxx}] &&
+ ${os.major} >= 13} {
+ set cxxstdlib libc++
+ } else {
+ set cxxstdlib libstdc++
+ }
+
+ if {${cxxstdlib} eq "libstdc++"} {
+ depends_lib-delete path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3
+ depends_lib-append path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3-2.0
+ }
+}
+
+livecheck.type gnome
+
Deleted: users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile-3.11.92
===================================================================
--- users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile-3.11.92 2014-03-27 03:21:22 UTC (rev 118242)
+++ users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile-3.11.92 2014-03-27 03:29:11 UTC (rev 118243)
@@ -1,73 +0,0 @@
-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
-# $Id: Portfile 116271 2014-01-23 17:32:19Z devans at macports.org $
-
-PortSystem 1.0
-
-name gnome-online-accounts
-version 3.11.92
-license LGPL-2
-set branch [join [lrange [split ${version} .] 0 1] .]
-description Single sign-on framework for GNOME
-long_description \
- ${description}
-maintainers devans openmaintainer
-categories gnome
-platforms darwin
-homepage https://wiki.gnome.org/Projects/GnomeOnlineAccounts
-master_sites gnome:sources/${name}/${branch}/
-
-use_xz yes
-
-checksums rmd160 fe9ef1880ba7c3deea963b8fddb1d4d7cc4ec72c \
- sha256 013a2e6ee2b9896a5e61a9d045245363f165abef52d9301e0c60844e264bb6cc
-
-depends_build port:pkgconfig \
- port:intltool \
- port:gtk-doc
-
-depends_lib port:gtk3 \
- path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3 \
- port:libsoup \
- port:json-glib \
- port:rest \
- port:libsecret \
- port:libxml2 \
- port:gobject-introspection \
- port:gcr \
- port:telepathy-glib
-
-#patchfiles patch-return-val-if-fail.diff
-
-# use upstream autogen.sh to update m4/intltool.m4 and telepathy-account-widgets/m4/intltool.m4 and reconfigure
-
-post-patch {
- xinstall -m 755 ${filespath}/autogen.sh ${worksrcpath}
-}
-
-configure.cmd ./autogen.sh
-
-configure.cflags-append -Wno-format-nonliteral
-configure.args --enable-introspection=yes
-
-# TODO: Check ${configure.cxx_stdlib} directly once MacPorts 2.3 is released
-platform darwin {
- set cxxstdlib {}
-
- if {[info exists configure.cxx_stdlib] &&
- ${configure.cxx_stdlib} ne {} &&
- [string match *clang* ${configure.cxx}]} {
- set cxxstdlib ${configure.cxx_stdlib}
- } elseif {[string match *clang* ${configure.cxx}] &&
- ${os.major} >= 13} {
- set cxxstdlib libc++
- } else {
- set cxxstdlib libstdc++
- }
-
- if {${cxxstdlib} eq "libstdc++"} {
- depends_lib-delete path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3
- depends_lib-append path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3-2.0
- }
-}
-
-livecheck.type gnome-with-unstable
Added: users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile-3.12.0
===================================================================
--- users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile-3.12.0 (rev 0)
+++ users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/Portfile-3.12.0 2014-03-27 03:29:11 UTC (rev 118243)
@@ -0,0 +1,73 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
+# $Id: Portfile 116271 2014-01-23 17:32:19Z devans at macports.org $
+
+PortSystem 1.0
+
+name gnome-online-accounts
+version 3.12.0
+license LGPL-2
+set branch [join [lrange [split ${version} .] 0 1] .]
+description Single sign-on framework for GNOME
+long_description \
+ ${description}
+maintainers devans openmaintainer
+categories gnome
+platforms darwin
+homepage https://wiki.gnome.org/Projects/GnomeOnlineAccounts
+master_sites gnome:sources/${name}/${branch}/
+
+use_xz yes
+
+checksums rmd160 be68c2054eada0c3579ae4766161563df6bf0e71 \
+ sha256 81d44afb3b993b7fb465d19b1b572db423bc7591e309f829d0639c802d7dfcc2
+
+depends_build port:pkgconfig \
+ port:intltool \
+ port:gtk-doc
+
+depends_lib port:gtk3 \
+ path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3 \
+ port:libsoup \
+ port:json-glib \
+ port:rest \
+ port:libsecret \
+ port:libxml2 \
+ port:gobject-introspection \
+ port:gcr \
+ port:telepathy-glib
+
+#patchfiles patch-return-val-if-fail.diff
+
+# use upstream autogen.sh to update m4/intltool.m4 and telepathy-account-widgets/m4/intltool.m4 and reconfigure
+
+post-patch {
+ xinstall -m 755 ${filespath}/autogen.sh ${worksrcpath}
+}
+
+configure.cmd ./autogen.sh
+
+configure.cflags-append -Wno-format-nonliteral
+configure.args --enable-introspection=yes
+
+# TODO: Check ${configure.cxx_stdlib} directly once MacPorts 2.3 is released
+platform darwin {
+ set cxxstdlib {}
+
+ if {[info exists configure.cxx_stdlib] &&
+ ${configure.cxx_stdlib} ne {} &&
+ [string match *clang* ${configure.cxx}]} {
+ set cxxstdlib ${configure.cxx_stdlib}
+ } elseif {[string match *clang* ${configure.cxx}] &&
+ ${os.major} >= 13} {
+ set cxxstdlib libc++
+ } else {
+ set cxxstdlib libstdc++
+ }
+
+ if {${cxxstdlib} eq "libstdc++"} {
+ depends_lib-delete path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3
+ depends_lib-append path:lib/pkgconfig/webkitgtk-3.0.pc:webkit-gtk3-2.0
+ }
+}
+
+livecheck.type gnome
Added: users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/files/patch-alarm.diff
===================================================================
--- users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/files/patch-alarm.diff (rev 0)
+++ users/devans/GNOME-3/stable/dports/gnome/gnome-online-accounts/files/patch-alarm.diff 2014-03-27 03:29:11 UTC (rev 118243)
@@ -0,0 +1,539 @@
+From cd6ee762c3bfcd2d103f3ff50698032eb0fe6e91 Mon Sep 17 00:00:00 2001
+From: Debarshi Ray <debarshir at gnome.org>
+Date: Fri, 08 Nov 2013 17:33:49 +0000
+Subject: alarm: Do not clear the wrong objects when setting the time
+
+When the time is set using goa_alarm_set_time, we cancel the existing
+self->priv->cancellable and replace it with a new one. Then we take a
+reference to a new context and time. However, since when we cancelled
+the old cancellable, we triggered a chain of events which cause
+clear_scheduled_wakeups to be invoked from a idle callback. By the time
+it gets invoked, self->priv->cancellable, self->priv->context and
+self->priv->time point to the new objects that were set up in
+goa_alarm_set_time, which we don't want to clear.
+
+Actually, there is no point in clearing them in
+clear_scheduled_wakeups, because goa_alarm_set_time already clears up
+the older objects and the only other time we want to clear them is in
+dispose.
+
+Fixes: https://bugzilla.gnome.org/711696
+---
+diff --git a/src/goaidentity/goaalarm.c b/src/goaidentity/goaalarm.c
+index 5f50243..112cb00 100644
+--- src/goaidentity/goaalarm.c
++++ src/goaidentity/goaalarm.c
+@@ -151,15 +151,9 @@ clear_scheduled_wakeups (GoaAlarm *self)
+ break;
+ }
+
+- g_clear_object (&self->priv->cancellable);
+-
+- g_clear_pointer (&self->priv->context, (GDestroyNotify) g_main_context_unref);
+-
+ g_clear_pointer (&self->priv->previous_wakeup_time,
+ (GDestroyNotify) g_date_time_unref);
+
+- g_clear_pointer (&self->priv->time, (GDestroyNotify) g_date_time_unref);
+-
+ g_assert (self->priv->timeout.source == NULL);
+
+ self->priv->type = GOA_ALARM_TYPE_UNSCHEDULED;
+@@ -167,6 +161,18 @@ clear_scheduled_wakeups (GoaAlarm *self)
+ }
+
+ static void
++goa_alarm_dispose (GObject *object)
++{
++ GoaAlarm *self = GOA_ALARM (object);
++
++ g_clear_object (&self->priv->cancellable);
++ g_clear_pointer (&self->priv->context, (GDestroyNotify) g_main_context_unref);
++ g_clear_pointer (&self->priv->time, (GDestroyNotify) g_date_time_unref);
++
++ G_OBJECT_CLASS (goa_alarm_parent_class)->dispose (object);
++}
++
++static void
+ goa_alarm_finalize (GObject *object)
+ {
+ GoaAlarm *self = GOA_ALARM (object);
+@@ -223,6 +229,7 @@ goa_alarm_class_init (GoaAlarmClass *klass)
+
+ object_class = G_OBJECT_CLASS (klass);
+
++ object_class->dispose = goa_alarm_dispose;
+ object_class->finalize = goa_alarm_finalize;
+ object_class->get_property = goa_alarm_get_property;
+ object_class->set_property = goa_alarm_set_property;
+@@ -637,6 +644,7 @@ goa_alarm_set_time (GoaAlarm *self, GDateTime *time, GCancellable *cancellable)
+
+ self->priv->time = time;
+
++ g_clear_pointer (&self->priv->context, (GDestroyNotify) g_main_context_unref);
+ self->priv->context = g_main_context_ref (g_main_context_default ());
+
+ schedule_wakeups (self);
+--
+cgit v0.9.2
+From 5cbed5062f292a69fe1a514425ced1bd19589cbc Mon Sep 17 00:00:00 2001
+From: Debarshi Ray <debarshir at gnome.org>
+Date: Fri, 08 Nov 2013 17:36:46 +0000
+Subject: alarm: The global default main context is always the same
+
+Fixes: https://bugzilla.gnome.org/711696
+---
+diff --git a/src/goaidentity/goaalarm.c b/src/goaidentity/goaalarm.c
+index 112cb00..e51df73 100644
+--- src/goaidentity/goaalarm.c
++++ src/goaidentity/goaalarm.c
+@@ -644,8 +644,8 @@ goa_alarm_set_time (GoaAlarm *self, GDateTime *time, GCancellable *cancellable)
+
+ self->priv->time = time;
+
+- g_clear_pointer (&self->priv->context, (GDestroyNotify) g_main_context_unref);
+- self->priv->context = g_main_context_ref (g_main_context_default ());
++ if (self->priv->context == NULL)
++ self->priv->context = g_main_context_ref (g_main_context_default ());
+
+ schedule_wakeups (self);
+
+--
+cgit v0.9.2
+From 8d0d36ecd67f4e020965efb74373db4644008bef Mon Sep 17 00:00:00 2001
+From: Debarshi Ray <debarshir at gnome.org>
+Date: Mon, 11 Nov 2013 10:51:42 +0000
+Subject: alarm: Use the same GSource pointer for TIMER and TIMEOUT alarms
+
+Simplifies the code so that it is easier to tag the "cancelled"
+handler with the correct GSource and GInputStream (if any) that are to
+be cleaned.
+
+Fixes: https://bugzilla.gnome.org/711696
+---
+diff --git a/src/goaidentity/goaalarm.c b/src/goaidentity/goaalarm.c
+index e51df73..eccfa09 100644
+--- src/goaidentity/goaalarm.c
++++ src/goaidentity/goaalarm.c
+@@ -1,6 +1,6 @@
+ /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+ /*
+- * Copyright (C) 2012 Red Hat, Inc.
++ * Copyright (C) 2012, 2013 Red Hat, Inc.
+ *
+ * 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
+@@ -39,17 +39,6 @@
+
+ #include "goalogging.h"
+
+-typedef struct
+-{
+- GSource *source;
+- GInputStream *stream;
+-} Timer;
+-
+-typedef struct
+-{
+- GSource *source;
+-} Timeout;
+-
+ #define MAX_TIMEOUT_INTERVAL (10 *1000)
+
+ typedef enum
+@@ -70,11 +59,8 @@ struct _GoaAlarmPrivate
+ GRecMutex lock;
+
+ GoaAlarmType type;
+- union
+- {
+- Timer timer;
+- Timeout timeout;
+- };
++ GSource *scheduled_wakeup_source;
++ GInputStream *stream; /* NULL, unless using timerfd */
+ };
+
+ enum
+@@ -110,10 +96,10 @@ clear_scheduled_timer_wakeups (GoaAlarm *self)
+ GError *error;
+ gboolean is_closed;
+
+- g_clear_pointer (&self->priv->timer.source, (GDestroyNotify) g_source_destroy);
++ g_clear_pointer (&self->priv->scheduled_wakeup_source, (GDestroyNotify) g_source_destroy);
+
+ error = NULL;
+- is_closed = g_input_stream_close (self->priv->timer.stream, NULL, &error);
++ is_closed = g_input_stream_close (self->priv->stream, NULL, &error);
+
+ if (!is_closed)
+ {
+@@ -121,14 +107,14 @@ clear_scheduled_timer_wakeups (GoaAlarm *self)
+ g_error_free (error);
+ }
+
+- g_clear_object (&self->priv->timer.stream);
++ g_clear_object (&self->priv->stream);
+ #endif
+ }
+
+ static void
+ clear_scheduled_timeout_wakeups (GoaAlarm *self)
+ {
+- g_clear_pointer (&self->priv->timeout.source, (GDestroyNotify) g_source_destroy);
++ g_clear_pointer (&self->priv->scheduled_wakeup_source, (GDestroyNotify) g_source_destroy);
+ }
+
+ static void
+@@ -154,8 +140,6 @@ clear_scheduled_wakeups (GoaAlarm *self)
+ g_clear_pointer (&self->priv->previous_wakeup_time,
+ (GDestroyNotify) g_date_time_unref);
+
+- g_assert (self->priv->timeout.source == NULL);
+-
+ self->priv->type = GOA_ALARM_TYPE_UNSCHEDULED;
+ g_rec_mutex_unlock (&self->priv->lock);
+ }
+@@ -435,7 +419,7 @@ clear_timer_source (GTask *task)
+ GoaAlarm *self;
+
+ self = g_task_get_source_object (task);
+- self->priv->timer.source = NULL;
++ self->priv->scheduled_wakeup_source = NULL;
+
+ g_object_unref (task);
+ }
+@@ -480,19 +464,19 @@ schedule_wakeups_with_timerfd (GoaAlarm *self)
+ }
+
+ self->priv->type = GOA_ALARM_TYPE_TIMER;
+- self->priv->timer.stream = g_unix_input_stream_new (fd, TRUE);
++ self->priv->stream = g_unix_input_stream_new (fd, TRUE);
+
+ task = g_task_new (self, self->priv->cancellable, NULL, NULL);
+
+ source =
+ g_pollable_input_stream_create_source (G_POLLABLE_INPUT_STREAM
+- (self->priv->timer.stream),
++ (self->priv->stream),
+ self->priv->cancellable);
+- self->priv->timer.source = source;
+- g_source_set_callback (self->priv->timer.source,
++ self->priv->scheduled_wakeup_source = source;
++ g_source_set_callback (self->priv->scheduled_wakeup_source,
+ (GSourceFunc) on_timer_source_ready, task,
+ (GDestroyNotify) clear_timer_source);
+- g_source_attach (self->priv->timer.source, self->priv->context);
++ g_source_attach (self->priv->scheduled_wakeup_source, self->priv->context);
+ g_source_unref (source);
+
+ return TRUE;
+@@ -528,7 +512,7 @@ out:
+ static void
+ clear_timeout_source_pointer (GoaAlarm *self)
+ {
+- self->priv->timeout.source = NULL;
++ self->priv->scheduled_wakeup_source = NULL;
+ }
+
+ static void
+@@ -556,13 +540,13 @@ schedule_wakeups_with_timeout_source (GoaAlarm *self)
+
+ source = g_timeout_source_new (interval);
+
+- self->priv->timeout.source = source;
+- g_source_set_callback (self->priv->timeout.source,
++ self->priv->scheduled_wakeup_source = source;
++ g_source_set_callback (self->priv->scheduled_wakeup_source,
+ (GSourceFunc)
+ on_timeout_source_ready,
+ self, (GDestroyNotify) clear_timeout_source_pointer);
+
+- g_source_attach (self->priv->timeout.source, self->priv->context);
++ g_source_attach (self->priv->scheduled_wakeup_source, self->priv->context);
+ g_source_unref (source);
+ }
+
+--
+cgit v0.9.2
+From b7deea49691d7a9c1f4b2c7acdf9b77f2d69fda4 Mon Sep 17 00:00:00 2001
+From: Debarshi Ray <debarshir at gnome.org>
+Date: Mon, 11 Nov 2013 12:11:28 +0000
+Subject: alarm: Tag the "cancelled" handler with the correct source and stream
+
+When a time is set using goa_alarm_set_time, we try to clear the older
+source and stream by cancelling self->priv->cancellable. However,
+before we have had a chance to actually clear them in an idle callback,
+a new source and stream corresponding to the new time is set. This
+causes the older source and stream to be leaked, and instead the newly
+created objects are cleared.
+
+This is wrong. To set things right, we tag the cancelled handler with
+the older source and stream before they are overwritten.
+
+Fixes: https://bugzilla.gnome.org/711696
+---
+diff --git a/src/goaidentity/goaalarm.c b/src/goaidentity/goaalarm.c
+index eccfa09..442f275 100644
+--- src/goaidentity/goaalarm.c
++++ src/goaidentity/goaalarm.c
+@@ -90,16 +90,16 @@ clear_scheduled_immediate_wakeup (GoaAlarm *self)
+ }
+
+ static void
+-clear_scheduled_timer_wakeups (GoaAlarm *self)
++clear_scheduled_timer_wakeups (GoaAlarm *self, GSource *source, GInputStream *stream)
+ {
+ #ifdef HAVE_TIMERFD
+ GError *error;
+ gboolean is_closed;
+
+- g_clear_pointer (&self->priv->scheduled_wakeup_source, (GDestroyNotify) g_source_destroy);
++ g_source_destroy (source);
+
+ error = NULL;
+- is_closed = g_input_stream_close (self->priv->stream, NULL, &error);
++ is_closed = g_input_stream_close (stream, NULL, &error);
+
+ if (!is_closed)
+ {
+@@ -107,18 +107,18 @@ clear_scheduled_timer_wakeups (GoaAlarm *self)
+ g_error_free (error);
+ }
+
+- g_clear_object (&self->priv->stream);
++ g_object_unref (stream);
+ #endif
+ }
+
+ static void
+-clear_scheduled_timeout_wakeups (GoaAlarm *self)
++clear_scheduled_timeout_wakeups (GoaAlarm *self, GSource *source)
+ {
+- g_clear_pointer (&self->priv->scheduled_wakeup_source, (GDestroyNotify) g_source_destroy);
++ g_source_destroy (source);
+ }
+
+ static void
+-clear_scheduled_wakeups (GoaAlarm *self)
++clear_scheduled_wakeups (GoaAlarm *self, GSource *source, GInputStream *stream)
+ {
+ g_rec_mutex_lock (&self->priv->lock);
+ clear_scheduled_immediate_wakeup (self);
+@@ -126,11 +126,11 @@ clear_scheduled_wakeups (GoaAlarm *self)
+ switch (self->priv->type)
+ {
+ case GOA_ALARM_TYPE_TIMER:
+- clear_scheduled_timer_wakeups (self);
++ clear_scheduled_timer_wakeups (self, source, stream);
+ break;
+
+ case GOA_ALARM_TYPE_TIMEOUT:
+- clear_scheduled_timeout_wakeups (self);
++ clear_scheduled_timeout_wakeups (self, source);
+ break;
+
+ default:
+@@ -161,7 +161,7 @@ goa_alarm_finalize (GObject *object)
+ {
+ GoaAlarm *self = GOA_ALARM (object);
+
+- clear_scheduled_wakeups (self);
++ clear_scheduled_wakeups (self, self->priv->scheduled_wakeup_source, self->priv->stream);
+
+ G_OBJECT_CLASS (goa_alarm_parent_class)->finalize (object);
+ }
+@@ -250,9 +250,18 @@ goa_alarm_init (GoaAlarm *self)
+ static gboolean
+ async_alarm_cancel_idle_cb (gpointer user_data)
+ {
+- GoaAlarm *self = user_data;
++ GoaAlarm *self;
++ GInputStream *stream;
++ GSource *source;
++ GTask *task = G_TASK (user_data);
++ gpointer task_data;
+
+- clear_scheduled_wakeups (self);
++ self = g_task_get_source_object (task);
++ source = (GSource *) g_object_get_data (G_OBJECT (task), "alarm-scheduled-wakeup-source");
++ task_data = g_object_get_data (G_OBJECT (task), "alarm-stream");
++ stream = (task_data == NULL) ? NULL : G_INPUT_STREAM (task_data);
++
++ clear_scheduled_wakeups (self, source, stream);
+ return G_SOURCE_REMOVE;
+ }
+
+@@ -261,13 +270,25 @@ on_cancelled (GCancellable *cancellable, gpointer user_data)
+ {
+ GoaAlarm *self = GOA_ALARM (user_data);
+ GSource *idle_source;
++ GTask *task;
+
++ task = g_task_new (self, NULL, NULL, NULL);
++
++ g_object_set_data_full (G_OBJECT (task),
++ "alarm-scheduled-wakeup-source",
++ g_source_ref (self->priv->scheduled_wakeup_source),
++ (GDestroyNotify) g_source_unref);
++
++ if (self->priv->stream != NULL)
++ g_object_set_data_full (G_OBJECT (task), "alarm-stream", g_object_ref (self->priv->stream), g_object_unref);
+
+ idle_source = g_idle_source_new ();
+ g_source_set_priority (idle_source, G_PRIORITY_HIGH_IDLE);
+- g_source_set_callback (idle_source, async_alarm_cancel_idle_cb, g_object_ref (self), g_object_unref);
++ g_source_set_callback (idle_source, async_alarm_cancel_idle_cb, g_object_ref (task), g_object_unref);
+ g_source_attach (idle_source, self->priv->context);
+ g_source_unref (idle_source);
++
++ g_object_unref (task);
+ }
+
+ static void
+@@ -412,17 +433,6 @@ out:
+ g_rec_mutex_unlock (&self->priv->lock);
+ return run_again;
+ }
+-
+-static void
+-clear_timer_source (GTask *task)
+-{
+- GoaAlarm *self;
+-
+- self = g_task_get_source_object (task);
+- self->priv->scheduled_wakeup_source = NULL;
+-
+- g_object_unref (task);
+-}
+ #endif
+
+ static gboolean
+@@ -475,7 +485,7 @@ schedule_wakeups_with_timerfd (GoaAlarm *self)
+ self->priv->scheduled_wakeup_source = source;
+ g_source_set_callback (self->priv->scheduled_wakeup_source,
+ (GSourceFunc) on_timer_source_ready, task,
+- (GDestroyNotify) clear_timer_source);
++ (GDestroyNotify) g_object_unref);
+ g_source_attach (self->priv->scheduled_wakeup_source, self->priv->context);
+ g_source_unref (source);
+
+--
+cgit v0.9.2
+From 72e6d277de953b24e488a7b75464883a4abb5ca1 Mon Sep 17 00:00:00 2001
+From: Debarshi Ray <debarshir at gnome.org>
+Date: Mon, 11 Nov 2013 13:49:06 +0000
+Subject: alarm: Remove redundant preprocessor conditional
+
+Reading the rest of the code, it appears to me that the preprocessor
+conditionals were meant to surpress compiler warnings and errors
+caused by the lack of timerfd support. For the rest of the logic,
+GoaAlarmType is used to separate the different kinds of timers.
+
+Fixes: https://bugzilla.gnome.org/711696
+---
+diff --git a/src/goaidentity/goaalarm.c b/src/goaidentity/goaalarm.c
+index 442f275..9e0ab64 100644
+--- src/goaidentity/goaalarm.c
++++ src/goaidentity/goaalarm.c
+@@ -92,7 +92,6 @@ clear_scheduled_immediate_wakeup (GoaAlarm *self)
+ static void
+ clear_scheduled_timer_wakeups (GoaAlarm *self, GSource *source, GInputStream *stream)
+ {
+-#ifdef HAVE_TIMERFD
+ GError *error;
+ gboolean is_closed;
+
+@@ -108,7 +107,6 @@ clear_scheduled_timer_wakeups (GoaAlarm *self, GSource *source, GInputStream *st
+ }
+
+ g_object_unref (stream);
+-#endif
+ }
+
+ static void
+--
+cgit v0.9.2
+From c4f25c45758875a430af39663b3f8b81091320f1 Mon Sep 17 00:00:00 2001
+From: Debarshi Ray <debarshir at gnome.org>
+Date: Tue, 12 Nov 2013 10:00:05 +0000
+Subject: alarm: Consolidate clear_scheduled_time*_wakeups into one function
+
+Since we are using the same GSource pointer for TIMER and TIMEOUT
+alarms, there is no reason to continue having separate functions.
+
+Fixes: https://bugzilla.gnome.org/711696
+---
+diff --git a/src/goaidentity/goaalarm.c b/src/goaidentity/goaalarm.c
+index 9e0ab64..ed805d7 100644
+--- src/goaidentity/goaalarm.c
++++ src/goaidentity/goaalarm.c
+@@ -90,49 +90,31 @@ clear_scheduled_immediate_wakeup (GoaAlarm *self)
+ }
+
+ static void
+-clear_scheduled_timer_wakeups (GoaAlarm *self, GSource *source, GInputStream *stream)
+-{
+- GError *error;
+- gboolean is_closed;
+-
+- g_source_destroy (source);
+-
+- error = NULL;
+- is_closed = g_input_stream_close (stream, NULL, &error);
+-
+- if (!is_closed)
+- {
+- goa_warning ("GoaAlarm: could not close timer stream: %s", error->message);
+- g_error_free (error);
+- }
+-
+- g_object_unref (stream);
+-}
+-
+-static void
+-clear_scheduled_timeout_wakeups (GoaAlarm *self, GSource *source)
+-{
+- g_source_destroy (source);
+-}
+-
+-static void
+ clear_scheduled_wakeups (GoaAlarm *self, GSource *source, GInputStream *stream)
+ {
+ g_rec_mutex_lock (&self->priv->lock);
+ clear_scheduled_immediate_wakeup (self);
+
+- switch (self->priv->type)
++ if (self->priv->type != GOA_ALARM_TYPE_UNSCHEDULED)
+ {
+- case GOA_ALARM_TYPE_TIMER:
+- clear_scheduled_timer_wakeups (self, source, stream);
+- break;
++ g_source_destroy (source);
+
+- case GOA_ALARM_TYPE_TIMEOUT:
+- clear_scheduled_timeout_wakeups (self, source);
+- break;
++ if (stream != NULL)
++ {
++ GError *error;
++ gboolean is_closed;
+
+- default:
+- break;
++ error = NULL;
++ is_closed = g_input_stream_close (stream, NULL, &error);
++
++ if (!is_closed)
++ {
++ goa_warning ("GoaAlarm: could not close timer stream: %s", error->message);
++ g_error_free (error);
++ }
++
++ g_object_unref (stream);
++ }
+ }
+
+ g_clear_pointer (&self->priv->previous_wakeup_time,
+--
+cgit v0.9.2
Property changes on: users/devans/GNOME-3/stable/dports/gnome/libsocialweb
___________________________________________________________________
Added: svn:mergeinfo
+ /branches/mld-qt-481/dports/gnome/libsocialweb:92720,92813,92891,92963,93522,93556,93699,93743,93771-93773,93806,93817-93818,93856
/users/rmstonecipher/gnome/libsocialweb:102363-103172
Modified: users/devans/GNOME-3/stable/dports/gnome/libsocialweb/Portfile
===================================================================
--- trunk/dports/gnome/libsocialweb/Portfile 2014-03-26 23:00:31 UTC (rev 118238)
+++ users/devans/GNOME-3/stable/dports/gnome/libsocialweb/Portfile 2014-03-27 03:29:11 UTC (rev 118243)
@@ -5,6 +5,7 @@
name libsocialweb
version 0.25.21
+revision 1
license LGPL-2.1
set branch [join [lrange [split ${version} .] 0 1] .]
description A personal social data server.
Modified: users/devans/GNOME-3/stable/dports/graphics/clutter/Portfile
===================================================================
--- trunk/dports/graphics/clutter/Portfile 2014-03-26 23:00:31 UTC (rev 118238)
+++ users/devans/GNOME-3/stable/dports/graphics/clutter/Portfile 2014-03-27 03:29:11 UTC (rev 118243)
@@ -5,6 +5,7 @@
name clutter
version 1.18.0
+revision 1
license LGPL-2.1
set branch [join [lrange [split ${version} .] 0 1] .]
categories graphics
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20140326/4e0b457c/attachment-0001.html>
More information about the macports-changes
mailing list