diff options
author | Christian Grothoff <christian@grothoff.org> | 2011-10-11 11:35:20 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2011-10-11 11:35:20 +0000 |
commit | a1674c252f97d7dae2035ed0db388882a4c4bd2f (patch) | |
tree | 65e76783bcd42842e1d4495f3d08356191d74279 /src/core | |
parent | f1c214bd601c73062a5086dc85caa162f83119d8 (diff) | |
download | gnunet-a1674c252f97d7dae2035ed0db388882a4c4bd2f.tar.gz gnunet-a1674c252f97d7dae2035ed0db388882a4c4bd2f.zip |
fixes
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/gnunet-service-core_sessions.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/core/gnunet-service-core_sessions.c b/src/core/gnunet-service-core_sessions.c index 360b558e4..ab83532c0 100644 --- a/src/core/gnunet-service-core_sessions.c +++ b/src/core/gnunet-service-core_sessions.c | |||
@@ -484,12 +484,15 @@ try_transmission (struct Session *session) | |||
484 | size_t used; | 484 | size_t used; |
485 | 485 | ||
486 | used = 0; | 486 | used = 0; |
487 | pos = session->sme_head; | 487 | while ( (NULL != (pos = session->sme_head)) && |
488 | while ( (NULL != pos) && | ||
489 | (used + pos->size <= msize) ) | 488 | (used + pos->size <= msize) ) |
490 | { | 489 | { |
491 | memcpy (&pbuf[used], &pos[1], pos->size); | 490 | memcpy (&pbuf[used], &pos[1], pos->size); |
492 | used += pos->size; | 491 | used += pos->size; |
492 | GNUNET_CONTAINER_DLL_remove (session->sme_head, | ||
493 | session->sme_tail, | ||
494 | pos); | ||
495 | GNUNET_free (pos); | ||
493 | } | 496 | } |
494 | /* compute average payload size */ | 497 | /* compute average payload size */ |
495 | total_bytes += used; | 498 | total_bytes += used; |
@@ -737,7 +740,10 @@ GSC_SESSIONS_add_to_typemap (const struct GNUNET_PeerIdentity *peer, | |||
737 | struct Session *session; | 740 | struct Session *session; |
738 | struct GSC_TypeMap *nmap; | 741 | struct GSC_TypeMap *nmap; |
739 | 742 | ||
743 | if (0 == memcmp (peer, &GSC_my_identity, sizeof (struct GNUNET_PeerIdentity))) | ||
744 | return; | ||
740 | session = find_session (peer); | 745 | session = find_session (peer); |
746 | GNUNET_assert (NULL != session); | ||
741 | if (GNUNET_YES == | 747 | if (GNUNET_YES == |
742 | GSC_TYPEMAP_test_match (session->tmap, | 748 | GSC_TYPEMAP_test_match (session->tmap, |
743 | &type, 1)) | 749 | &type, 1)) |