- DEBUG2("\tmax_elem : %g with %d variables", max_elem,nb);
- if(nb>0 && !cnst->shared)
- nb = 1;
- cnst->usage = max_elem * nb;
- DEBUG3("\tConstraint Usage %p : %f with %d variables", cnst, cnst->usage,nb);
- if(!nb) {
- xbt_swag_remove(cnst, cnst_list);
- continue;
- }
- /* Saturated constraints update */
- if (min_usage < 0 || min_usage > cnst->remaining / cnst->usage) {
- DEBUG3("Update min_usage (%g) with cnst %p -> %g",min_usage, cnst,
- cnst->remaining / cnst->usage);
-
- min_usage = cnst->remaining / cnst->usage;
- while ((useless_cnst = xbt_swag_extract(&(cnst_to_update)))) {
- xbt_swag_insert_at_head(useless_cnst, cnst_list);
- }
- xbt_swag_remove(cnst, cnst_list);
- xbt_swag_insert(cnst, &(cnst_to_update));
- } else if (min_usage == cnst->remaining / cnst->usage) {
- DEBUG2("Keep min_usage (%g) with cnst %p",min_usage, cnst);
- xbt_swag_remove(cnst, cnst_list);
- xbt_swag_insert(cnst, &(cnst_to_update));
+ XBT_DEBUG("\tThere are %d variables", nb);
+ if (nb > 0 && !cnst->shared)
+ nb = 1;
+ if (!nb) {
+ cnst->remaining = 0.0;
+ cnst->usage = cnst->remaining;
+ xbt_swag_remove(cnst, cnst_list);
+ continue;