You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by mg...@apache.org on 2014/07/22 15:36:25 UTC

svn commit: r1612569 - /qpid/proton/trunk/proton-c/src/object/object.c

Author: mgoulish
Date: Tue Jul 22 13:36:25 2014
New Revision: 1612569

URL: http://svn.apache.org/r1612569
Log:
PROTON-625
In edge-case where map->load_factor exactly equals load,
it was possible for pni_map_ensure() and pni_map_entry()
to get into a semi-infinite loop.

Modified:
    qpid/proton/trunk/proton-c/src/object/object.c

Modified: qpid/proton/trunk/proton-c/src/object/object.c
URL: http://svn.apache.org/viewvc/qpid/proton/trunk/proton-c/src/object/object.c?rev=1612569&r1=1612568&r2=1612569&view=diff
==============================================================================
--- qpid/proton/trunk/proton-c/src/object/object.c (original)
+++ qpid/proton/trunk/proton-c/src/object/object.c Tue Jul 22 13:36:25 2014
@@ -520,7 +520,7 @@ static float pni_map_load(pn_map_t *map)
 static bool pni_map_ensure(pn_map_t *map, size_t capacity)
 {
   float load = pni_map_load(map);
-  if (capacity <= map->capacity && load < map->load_factor) {
+  if (capacity <= map->capacity && load <= map->load_factor) {
     return false;
   }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org