Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Gasp ! A bug in the extract function ! Shame on me !
authoralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Tue, 16 Nov 2004 22:54:07 +0000 (22:54 +0000)
committeralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Tue, 16 Nov 2004 22:54:07 +0000 (22:54 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@519 48e7efb5-ca39-0410-a469-dd3cf9ba447f

src/xbt/swag.c

index 42ae4ef..dc09977 100644 (file)
@@ -59,6 +59,10 @@ void *xbt_swag_extract(void *obj, xbt_swag_t swag)
 
   if (!obj)
     return NULL;
 
   if (!obj)
     return NULL;
+  if(!xbt_swag_belongs(obj, swag)) /* Trying to remove an object that
+                                     was not in this swag */
+      return NULL;
+
   if (swag->head == swag->tail) {      /* special case */
     if (swag->head != obj)     /* Trying to remove an object that was not in this swag */
       return NULL;
   if (swag->head == swag->tail) {      /* special case */
     if (swag->head != obj)     /* Trying to remove an object that was not in this swag */
       return NULL;