Simon McVittie
85214d1e7f
GDBusProxy: hold properties_lock while using any mutable property
...
This changes the meaning of "properties_lock" from "lock for D-Bus
properties" to "lock for GObject properties".
The most common problem, and the only one I've reproduced in a regression
test, is name_owner, which can be updated by the thread that owns
the GDBusProxy's main context (i.e. the thread-default main context of
the thread that constructed it) at the same time that a blocking call
is made. When a GDBusProxy is constructed in a thread-pool thread for
short-term use, the main context will typically be the global default
main context (which is actively running in the main thread!), making
this extremely problematic.
The interface info is perhaps a theoretical concern - one thread could
conceivably set it at the same time that another thread uses it, but only
in relatively pathological situations. The current API for this does have
the problem that it returns a borrowed ref, but interface info is
hopefully permanent anyway.
The default timeout is probably only a theoretical concern - it's just an
int, so writes are indivisible, and there's no worry about whether
something has been freed - but to be safe, let's hold the lock for that
too.
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=656039
Bug-NB: NB#259760
Signed-off-by: David Zeuthen <davidz@redhat.com>
2011-08-15 12:50:03 -04:00
..
2010-08-06 13:10:34 -04:00
2011-02-17 15:07:52 +08:00
2011-07-26 10:05:57 -04:00
2011-04-15 09:29:47 -04:00
2010-08-13 17:23:44 -04:00
2011-05-03 07:07:41 -04:00
2011-08-05 19:43:47 -04:00
2010-09-02 22:36:47 +03:00
2011-06-14 10:07:22 -04:00
2011-06-12 16:17:30 -04:00
2011-06-04 10:45:54 -04:00
2009-03-31 19:39:16 -04:00
2011-06-29 17:32:21 +01:00
2011-06-29 11:38:21 +01:00
2011-07-19 14:38:34 -03:00
2011-08-11 11:38:19 +02:00
2011-07-12 12:09:31 +02:00
2010-12-27 15:40:07 +01:00
2011-07-19 14:38:34 -03:00
2011-03-03 23:34:49 -05:00
2011-05-18 17:56:50 -04:00
2011-02-08 01:00:04 +00:00
2011-06-08 22:21:15 -04:00
2010-10-25 14:32:07 -04:00
2010-11-26 15:07:28 -05:00
2010-11-26 15:07:28 -05:00
2011-06-04 18:48:19 -04:00
2009-05-14 15:44:36 +02:00
2011-07-01 11:28:12 -04:00
2010-12-21 18:21:33 +01:00
2010-12-21 18:21:33 +01:00
2008-09-02 19:05:58 +00:00
2010-11-03 14:25:35 +01:00
2010-07-12 18:30:14 -04:00
2011-08-01 16:24:34 -04:00
2010-11-26 15:07:28 -05:00
2010-11-21 21:21:22 +01:00
2010-02-21 16:12:35 -05:00
2011-06-04 19:05:51 -04:00
2010-07-05 00:56:12 -04:00
2007-11-26 16:13:05 +00:00
2011-06-08 16:28:16 +01:00
2010-03-26 09:30:25 -04:00
2010-09-24 18:24:41 -03:00
2010-07-12 18:30:14 -04:00
2010-09-24 18:24:41 -03:00
2010-07-12 18:30:14 -04:00
2011-05-27 14:22:56 -04:00
2010-07-20 16:34:18 -04:00
2011-06-17 08:52:23 -04:00
2011-06-16 20:03:02 -04:00
2010-12-21 18:21:33 +01:00
2010-07-12 18:30:14 -04:00
2010-05-06 14:21:32 -04:00
2011-06-09 13:29:58 -04:00
2011-06-14 21:06:17 -04:00
2010-06-06 16:20:21 -04:00
2011-05-27 14:22:56 -04:00
2010-07-07 15:57:37 -04:00
2010-07-07 19:53:22 -04:00
2010-07-07 15:57:37 -04:00
2011-04-13 18:20:34 -04:00
2010-07-07 15:57:37 -04:00
2010-07-07 19:53:22 -04:00
2010-07-07 15:57:37 -04:00
2011-04-15 15:51:25 -04:00
2010-07-07 15:57:37 -04:00
2011-07-19 14:38:34 -03:00
2010-07-07 16:36:51 -04:00
2011-08-09 14:52:53 +02:00
2011-07-21 16:06:18 -04:00
2010-10-23 02:31:16 +02:00
2010-06-06 16:20:21 -04:00
2011-06-20 17:24:07 -04:00
2011-04-29 17:07:28 -04:00
2011-07-19 14:38:34 -03:00
2011-07-12 19:44:21 +02:00
2011-08-11 14:09:23 +02:00
2011-06-03 14:39:04 -04:00
2011-06-14 18:12:04 -04:00
2010-09-09 12:00:32 -04:00
2011-07-21 16:06:18 -04:00
2011-07-21 16:06:18 -04:00
2011-06-20 17:24:07 -04:00
2010-06-10 18:29:23 +02:00
2011-06-20 17:24:07 -04:00
2010-06-10 18:29:23 +02:00
2011-06-20 17:24:07 -04:00
2011-06-04 21:37:37 -04:00
2011-07-19 14:38:34 -03:00
2011-04-11 15:24:52 -04:00
2011-08-15 05:43:24 -04:00
2011-04-16 15:24:42 -04:00
2011-07-12 19:44:21 +02:00
2011-05-04 03:43:52 -04:00
2011-05-01 23:02:53 -04:00
2011-04-25 09:29:18 -04:00
2011-07-19 14:38:34 -03:00
2011-04-13 16:33:51 -04:00
2011-06-20 16:32:03 -04:00
2011-04-25 09:29:18 -04:00
2011-08-15 12:50:03 -04:00
2011-07-21 16:06:18 -04:00
2011-07-19 14:38:34 -03:00
2010-07-07 16:36:51 -04:00
2011-07-21 09:43:59 -04:00
2011-04-10 11:19:45 -04:00
2011-05-07 11:45:44 +02:00
2010-05-17 07:16:37 -04:00
2011-07-23 10:05:12 +02:00
2011-07-23 10:05:12 +02:00
2011-01-07 15:06:07 +01:00
2009-07-05 21:59:38 -04:00
2010-07-07 19:53:22 -04:00
2008-09-02 19:05:58 +00:00
2010-11-03 14:25:35 +01:00
2010-08-19 16:32:36 -04:00
2011-08-04 08:54:55 +02:00
2010-11-26 15:57:11 -05:00
2010-12-27 16:08:46 +01:00
2008-09-02 19:05:58 +00:00
2010-12-27 16:08:46 +01:00
2010-12-20 15:39:00 +01:00
2011-07-26 17:32:53 +02:00
2009-11-17 20:27:38 -06:00
2009-06-23 16:35:41 +02:00
2011-07-25 09:24:43 +02:00
2008-10-06 21:59:29 +00:00
2010-07-07 19:53:22 -04:00
2010-02-23 16:23:07 -08:00
2011-05-26 12:37:36 +01:00
2010-12-27 15:48:31 +01:00
2010-11-03 14:25:35 +01:00
2008-09-02 19:05:58 +00:00
2010-03-08 12:03:40 +01:00
2011-06-04 18:48:19 -04:00
2010-05-03 20:13:35 +02:00
2010-12-17 16:29:05 +01:00
2010-12-17 16:29:05 +01:00
2010-12-17 16:29:05 +01:00
2010-12-17 16:29:05 +01:00
2011-07-19 14:38:34 -03:00
2010-11-28 17:14:49 -05:00
2011-04-12 10:01:37 -04:00
2008-09-02 19:05:58 +00:00
2010-11-03 14:38:08 +01:00
2010-12-17 16:29:05 +01:00
2011-04-29 16:14:17 +02:00
2009-01-21 14:09:56 +00:00
2010-08-16 10:21:38 -04:00
2009-01-21 14:09:56 +00:00
2011-06-04 18:48:19 -04:00
2008-10-21 11:51:48 +00:00
2011-04-14 12:46:46 -04:00
2011-04-14 12:46:46 -04:00
2010-12-29 16:02:23 +01:00
2009-04-22 08:36:10 -04:00
2011-02-07 23:35:21 -05:00
2009-05-27 18:20:08 -04:00
2010-12-17 16:29:05 +01:00
2008-09-02 19:05:58 +00:00
2010-01-12 16:34:18 +01:00
2011-08-04 08:54:55 +02:00
2011-06-07 08:55:31 +08:00
2011-08-04 09:43:45 +02:00
2011-08-04 21:47:07 +02:00
2010-07-07 19:53:22 -04:00
2008-06-23 12:06:39 +00:00
2010-08-19 16:32:37 -04:00
2010-04-19 11:54:56 +03:00
2009-02-27 15:22:11 +00:00
2011-01-05 20:31:50 +01:00
2010-09-24 18:24:41 -03:00
2011-04-12 10:02:12 -04:00
2008-09-02 19:05:58 +00:00
2010-12-17 16:29:05 +01:00
2010-12-13 17:36:12 +01:00
2011-08-04 08:54:55 +02:00
2010-09-24 18:24:41 -03:00
2011-07-19 16:12:30 +02:00
2010-12-27 16:08:46 +01:00
2008-09-02 19:05:58 +00:00
2010-07-07 19:53:22 -04:00
2011-04-12 10:02:31 -04:00
2011-07-26 11:20:12 +02:00
2008-09-02 19:05:58 +00:00
2010-07-10 18:04:22 -04:00
2008-09-02 19:05:58 +00:00
2011-05-03 07:07:41 -04:00
2009-06-23 16:35:42 +02:00
2010-07-07 19:53:22 -04:00
2009-05-13 14:42:57 +02:00
2010-07-07 19:53:22 -04:00
2009-05-13 14:42:57 +02:00
2010-07-07 19:53:22 -04:00
2010-02-18 15:50:26 +01:00
2011-04-15 10:15:04 +02:00
2010-05-20 10:53:08 -04:00
2010-07-07 19:53:22 -04:00
2008-09-02 19:05:58 +00:00
2010-12-27 16:47:26 +01:00
2008-09-02 19:05:58 +00:00
2010-12-27 16:47:26 +01:00
2010-08-17 17:33:01 +02:00
2011-02-08 10:05:00 -05:00
2011-01-07 15:06:07 +01:00
2009-11-26 16:12:18 +01:00
2011-07-19 14:38:34 -03:00
2009-07-05 21:59:38 -04:00
2007-12-17 16:00:33 +00:00
2010-07-07 19:53:22 -04:00
2010-03-04 11:02:31 +01:00
2010-12-07 19:39:24 +01:00
2010-08-19 16:32:37 -04:00
2011-05-28 18:59:38 -04:00
2010-11-03 14:25:35 +01:00
2010-08-19 16:32:37 -04:00
2011-02-08 10:05:00 -05:00
2011-07-06 08:39:38 -04:00
2010-12-17 16:29:05 +01:00
2010-11-28 23:55:43 -05:00
2010-06-04 19:03:38 +02:00
2011-06-20 17:24:07 -04:00
2010-11-28 23:55:43 -05:00
2011-06-20 17:24:07 -04:00
2010-11-26 15:08:08 -05:00
2010-07-07 19:53:22 -04:00
2008-09-02 19:05:58 +00:00
2011-06-04 18:48:19 -04:00
2010-08-19 16:32:37 -04:00
2010-12-29 16:02:23 +01:00
2010-08-19 16:32:37 -04:00
2010-11-03 14:25:35 +01:00
2010-08-19 17:51:01 -04:00
2011-06-06 10:23:34 -04:00
2010-08-19 16:32:36 -04:00
2010-11-09 20:36:53 +08:00
2010-09-01 15:05:42 +02:00
2011-04-14 12:46:54 -04:00
2009-08-19 12:08:15 -04:00
2011-01-09 21:45:20 +01:00
2010-12-27 16:24:21 +01:00
2008-09-02 19:05:58 +00:00
2010-10-30 01:13:42 -04:00
2010-07-22 11:34:57 -04:00
2010-04-16 23:23:40 -04:00
2011-06-07 10:49:29 +08:00
2011-08-15 10:43:32 -04:00
2011-03-31 12:47:03 +05:30
2011-06-20 17:24:07 -04:00
2011-01-05 20:31:50 +01:00
2011-01-05 20:31:50 +01:00
2011-07-20 14:06:36 +02:00
2010-06-16 18:17:53 -04:00
2011-06-29 18:07:29 +01:00
2011-06-29 11:38:21 +01:00
2011-06-29 16:20:52 +01:00
2011-06-29 16:20:52 +01:00
2011-04-26 11:32:11 -04:00
2010-11-03 14:38:08 +01:00
2010-11-28 23:55:43 -05:00
2010-06-04 22:35:14 +02:00
2011-07-24 14:54:45 -04:00
2010-08-15 15:34:29 -04:00
2010-09-10 13:07:00 -04:00
2009-05-18 21:31:28 +02:00
2010-12-29 16:02:23 +01:00
2009-05-27 18:20:08 -04:00
2011-08-13 16:15:11 -04:00
2010-11-26 15:57:11 -05:00
2010-09-24 18:24:41 -03:00
2010-08-19 16:32:37 -04:00
2011-04-20 21:08:15 +02:00
2009-05-27 18:20:08 -04:00
2011-04-08 15:44:25 -04:00
2009-05-15 10:28:30 +02:00
2010-11-26 15:08:08 -05:00
2009-05-15 21:26:24 +02:00
2011-04-20 21:08:15 +02:00
2009-11-19 10:04:27 -06:00
2010-11-26 15:08:08 -05:00
2009-05-15 21:26:24 +02:00
2011-07-19 14:38:34 -03:00
2009-05-27 18:20:08 -04:00
2010-11-03 14:25:35 +01:00
2010-08-19 16:32:38 -04:00
2010-08-19 17:31:42 -04:00
2010-08-19 16:32:38 -04:00
2010-12-21 19:53:00 +07:00
2010-08-19 16:32:37 -04:00
2010-09-24 18:24:41 -03:00
2009-04-22 08:36:32 -04:00
2011-04-20 21:08:15 +02:00
2009-05-20 11:19:47 +02:00
2011-02-01 16:18:02 -02:00
2010-11-26 15:08:31 -05:00
2010-12-27 16:08:46 +01:00
2009-06-01 22:10:41 +02:00
2011-05-31 08:56:50 -04:00
2009-04-22 08:36:32 -04:00
2011-07-19 14:38:34 -03:00
2009-05-18 08:47:49 +02:00
2011-08-11 11:38:20 +02:00
2011-03-31 12:47:03 +05:30
2011-08-11 11:38:20 +02:00
2011-08-04 08:54:55 +02:00
2011-07-27 16:23:33 -04:00
2010-12-07 10:41:05 +01:00
2011-08-11 11:38:20 +02:00
2011-01-05 09:35:06 -08:00
2011-08-11 11:38:20 +02:00
2011-08-04 08:54:55 +02:00
2011-08-04 08:54:55 +02:00
2011-08-04 08:54:55 +02:00
2011-08-11 11:38:20 +02:00
2011-08-04 08:54:55 +02:00
2011-08-04 09:43:45 +02:00
2011-08-04 08:54:55 +02:00
2011-08-11 11:38:19 +02:00
2011-08-04 08:54:55 +02:00
2011-08-11 11:38:20 +02:00
2010-12-07 19:39:24 +01:00
2010-09-24 18:24:41 -03:00
2008-09-02 19:05:58 +00:00
2011-05-27 14:22:56 -04:00
2010-05-13 14:29:39 -04:00
2011-06-04 18:48:19 -04:00
2010-08-18 12:07:38 -04:00
2011-06-14 18:51:57 -04:00
2010-05-13 20:29:04 -04:00
2011-05-05 14:09:11 -04:00
2010-05-13 20:29:04 -04:00
2010-11-26 15:08:08 -05:00
2008-12-08 05:41:43 +00:00
2010-11-03 14:25:35 +01:00
2008-09-02 19:05:58 +00:00
2011-08-12 11:10:22 -04:00
2008-09-02 19:05:58 +00:00
2010-11-26 15:08:08 -05:00
2008-12-08 05:41:43 +00:00
2010-11-03 14:25:35 +01:00
2009-04-22 08:36:32 -04:00
2010-12-29 16:02:23 +01:00
2010-04-22 11:54:41 -04:00
2010-11-03 14:25:35 +01:00
2008-09-02 19:05:58 +00:00
2010-07-07 19:53:22 -04:00
2008-09-02 19:05:58 +00:00
2010-09-24 18:24:41 -03:00
2009-07-05 22:35:55 -04:00
2011-01-07 15:06:07 +01:00
2009-07-05 21:59:38 -04:00
2010-09-24 18:24:41 -03:00
2010-07-12 18:30:14 -04:00
2010-11-23 10:29:09 +01:00
2008-09-02 19:05:58 +00:00
2010-07-07 19:53:22 -04:00
2010-04-19 11:54:56 +03:00
2010-07-07 19:53:22 -04:00
2008-09-02 19:05:58 +00:00
2010-07-07 19:53:22 -04:00
2010-04-19 11:54:56 +03:00
2010-07-07 19:53:22 -04:00
2009-04-22 08:36:32 -04:00
2010-07-07 19:53:22 -04:00
2008-09-02 19:05:58 +00:00
2010-09-01 15:09:51 +02:00
2010-08-17 17:37:32 +02:00
2010-09-01 15:09:51 +02:00
2010-08-17 17:37:32 +02:00
2011-08-04 08:54:55 +02:00
2010-07-07 19:53:22 -04:00
2010-10-04 02:58:46 -04:00