Bugfix. (unionfind segfaulted when compiled with icc)
authorklao
Tue, 28 Sep 2004 10:32:23 +0000
changeset 914174490f545f8
parent 913 f2acaefc721c
child 915 751ed145bdae
Bugfix. (unionfind segfaulted when compiled with icc)
src/hugo/unionfind.h
     1.1 --- a/src/hugo/unionfind.h	Tue Sep 28 08:35:27 2004 +0000
     1.2 +++ b/src/hugo/unionfind.h	Tue Sep 28 10:32:23 2004 +0000
     1.3 @@ -446,7 +446,8 @@
     1.4        if (lai == clit)
     1.5  	return false;
     1.6  
     1.7 -      ItemList &c = *clit->my_class;
     1.8 +      ItemList &cl = *clit->my_class,
     1.9 +	&al = *lai->my_class;
    1.10  
    1.11        bool is_leader = (lai == ai);
    1.12        bool singleton = false;
    1.13 @@ -455,7 +456,7 @@
    1.14  	++lai;
    1.15        }
    1.16  
    1.17 -      c.splice(c.end(), *lai->my_class, ai);
    1.18 +      cl.splice(cl.end(), al, ai);
    1.19  
    1.20        if (is_leader) {
    1.21  	if (ai->size == 1) {
    1.22 @@ -468,7 +469,7 @@
    1.23  	}
    1.24        }
    1.25        if (!singleton) {
    1.26 -	for (IIter i = lai; i != lai->my_class->end(); ++i)
    1.27 +	for (IIter i = lai; i != al.end(); ++i)
    1.28  	  i->parent = lai;
    1.29  	--lai->size;
    1.30        }