diff options
author | Jukka Rissanen <jukka.rissanen@nokia.com> | 2011-01-05 15:14:11 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2011-01-05 18:51:19 -0800 |
commit | 0131fc0fb3928c2c50973d94768ff8bd0a70ac8b (patch) | |
tree | 61b593a0bc52b673fda29504b3a042b72be43f83 /src/ipconfig.c | |
parent | 9f2bafffc72796f31faf111c2dffb84ab5295bd2 (diff) | |
download | connman-0131fc0fb3928c2c50973d94768ff8bd0a70ac8b.tar.gz connman-0131fc0fb3928c2c50973d94768ff8bd0a70ac8b.tar.bz2 connman-0131fc0fb3928c2c50973d94768ff8bd0a70ac8b.zip |
ipconfig: add debugging to ref counting functions
Diffstat (limited to 'src/ipconfig.c')
-rw-r--r-- | src/ipconfig.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/ipconfig.c b/src/ipconfig.c index 690b51e5..b5dc98f0 100644 --- a/src/ipconfig.c +++ b/src/ipconfig.c @@ -915,6 +915,9 @@ struct connman_ipconfig *connman_ipconfig_create(int index, */ struct connman_ipconfig *connman_ipconfig_ref(struct connman_ipconfig *ipconfig) { + DBG("ipconfig %p refcount %d", ipconfig, + g_atomic_int_get(&ipconfig->refcount) + 1); + g_atomic_int_inc(&ipconfig->refcount); return ipconfig; @@ -928,8 +931,13 @@ struct connman_ipconfig *connman_ipconfig_ref(struct connman_ipconfig *ipconfig) */ void connman_ipconfig_unref(struct connman_ipconfig *ipconfig) { - if (ipconfig && - g_atomic_int_dec_and_test(&ipconfig->refcount) == TRUE) { + if (ipconfig == NULL) + return; + + DBG("ipconfig %p refcount %d", ipconfig, + g_atomic_int_get(&ipconfig->refcount) - 1); + + if (g_atomic_int_dec_and_test(&ipconfig->refcount) == TRUE) { __connman_ipconfig_disable(ipconfig); connman_ipconfig_set_ops(ipconfig, NULL); |