[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [gnunet] branch master updated (9a558c93b -> ea351cef9)
From: |
gnunet |
Subject: |
[GNUnet-SVN] [gnunet] branch master updated (9a558c93b -> ea351cef9) |
Date: |
Sun, 07 Jan 2018 01:00:21 +0100 |
This is an automated email from the git hooks/post-receive script.
lurchi pushed a change to branch master
in repository gnunet.
from 9a558c93b doc/documentation: developer,philosophy,user: suggestions by
Amirouche Boubekki via address@hidden, with some minor additions.
new 6c1432bf5 Leak fix.
new 2df817dea Merge branch 'lurchi_social'
new 951045613 reconnect_task pointer must be NULLed when executed
new 1522c35f3 shutdown might happen when plc_gst is not in the hashmap
new ea351cef9 Merge branch 'master' of https://gnunet.org/git/gnunet
The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
src/psycstore/psycstore_api.c | 3 +++
src/social/gnunet-service-social.c | 25 +++++++++++++++++--------
2 files changed, 20 insertions(+), 8 deletions(-)
diff --git a/src/psycstore/psycstore_api.c b/src/psycstore/psycstore_api.c
index 16f4a1ae9..5a4865dce 100644
--- a/src/psycstore/psycstore_api.c
+++ b/src/psycstore/psycstore_api.c
@@ -362,6 +362,9 @@ do_connect (struct GNUNET_PSYCSTORE_Handle *h)
static void
reconnect (void *cls)
{
+ struct GNUNET_PSYCSTORE_Handle *h = cls;
+
+ h->reconnect_task = NULL;
do_connect (cls);
}
diff --git a/src/social/gnunet-service-social.c
b/src/social/gnunet-service-social.c
index 5b2a8ba9b..520df20b9 100644
--- a/src/social/gnunet-service-social.c
+++ b/src/social/gnunet-service-social.c
@@ -503,17 +503,18 @@ cleanup_guest (struct Guest *gst)
struct GNUNET_CONTAINER_MultiHashMap *
plc_gst = GNUNET_CONTAINER_multihashmap_get (place_guests,
&plc->pub_key_hash);
- GNUNET_assert (NULL != plc_gst);
- GNUNET_CONTAINER_multihashmap_remove (plc_gst, &plc->ego_pub_hash, gst);
-
- if (0 == GNUNET_CONTAINER_multihashmap_size (plc_gst))
+ if (NULL != plc_gst)
{
- GNUNET_CONTAINER_multihashmap_remove (place_guests, &plc->pub_key_hash,
- plc_gst);
- GNUNET_CONTAINER_multihashmap_destroy (plc_gst);
+ GNUNET_CONTAINER_multihashmap_remove (plc_gst, &plc->ego_pub_hash, gst);
+
+ if (0 == GNUNET_CONTAINER_multihashmap_size (plc_gst))
+ {
+ GNUNET_CONTAINER_multihashmap_remove (place_guests, &plc->pub_key_hash,
+ plc_gst);
+ GNUNET_CONTAINER_multihashmap_destroy (plc_gst);
+ }
}
GNUNET_CONTAINER_multihashmap_remove (guests, &plc->pub_key_hash, gst);
-
if (NULL != gst->join_req)
GNUNET_free (gst->join_req);
if (NULL != gst->relays)
@@ -1755,6 +1756,7 @@ guest_enter (const struct GuestEnterRequest *greq, struct
Guest **ret_gst)
struct GNUNET_CONTAINER_MultiHashMap *
plc_gst = GNUNET_CONTAINER_multihashmap_get (place_guests,
&place_pub_hash);
struct Guest *gst = NULL;
+ int new_guest;
if (NULL != plc_gst)
gst = GNUNET_CONTAINER_multihashmap_get (plc_gst, &ego_pub_hash);
@@ -1763,9 +1765,12 @@ guest_enter (const struct GuestEnterRequest *greq,
struct Guest **ret_gst)
"plc_gst = %p, gst = %p\n",
plc_gst,
gst);
+
+ new_guest = GNUNET_NO;
if (NULL == gst)
{
gst = GNUNET_new (struct Guest);
+ new_guest = GNUNET_YES;
}
if (NULL == gst->slave)
{
@@ -1841,6 +1846,9 @@ guest_enter (const struct GuestEnterRequest *greq, struct
Guest **ret_gst)
plc_gst = GNUNET_CONTAINER_multihashmap_create (1, GNUNET_YES);
(void) GNUNET_CONTAINER_multihashmap_put (place_guests,
&plc->pub_key_hash, plc_gst,
GNUNET_CONTAINER_MULTIHASHMAPOPTION_UNIQUE_FAST);
+ }
+ if (GNUNET_YES == new_guest)
+ {
(void) GNUNET_CONTAINER_multihashmap_put (plc_gst, &plc->ego_pub_hash,
gst,
GNUNET_CONTAINER_MULTIHASHMAPOPTION_UNIQUE_FAST);
(void) GNUNET_CONTAINER_multihashmap_put (guests, &plc->pub_key_hash,
gst,
@@ -1862,6 +1870,7 @@ guest_enter (const struct GuestEnterRequest *greq, struct
Guest **ret_gst)
ret = GNUNET_YES;
}
+ // TODO: explain why free(gst) not necessary
if (NULL != ret_gst)
*ret_gst = gst;
return ret;
--
To stop receiving notification emails like this one, please contact
address@hidden
- [GNUnet-SVN] [gnunet] branch master updated (9a558c93b -> ea351cef9),
gnunet <=
- [GNUnet-SVN] [gnunet] 01/05: Leak fix., gnunet, 2018/01/06
- [GNUnet-SVN] [gnunet] 03/05: reconnect_task pointer must be NULLed when executed, gnunet, 2018/01/06
- [GNUnet-SVN] [gnunet] 04/05: shutdown might happen when plc_gst is not in the hashmap, gnunet, 2018/01/06
- [GNUnet-SVN] [gnunet] 02/05: Merge branch 'lurchi_social', gnunet, 2018/01/06
- [GNUnet-SVN] [gnunet] 05/05: Merge branch 'master' of https://gnunet.org/git/gnunet, gnunet, 2018/01/06