[PPL-devel] [GIT] ppl/ppl(master): Polyhedron: fix an invalid reference bug in generalized_affine_image().

Marco Poletti poletti.marco at gmail.com
Sat Feb 5 17:33:28 CET 2011


Module: ppl/ppl
Branch: master
Commit: bf1edca5e0ddb03674a35218dccce6bc421469e2
URL:    http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=bf1edca5e0ddb03674a35218dccce6bc421469e2

Author: Marco Poletti <poletti.marco at gmail.com>
Date:   Sat Feb  5 16:09:47 2011 +0100

Polyhedron: fix an invalid reference bug in generalized_affine_image().

---

 src/Polyhedron_public.cc |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/src/Polyhedron_public.cc b/src/Polyhedron_public.cc
index 6a5105e..0e2f010 100644
--- a/src/Polyhedron_public.cc
+++ b/src/Polyhedron_public.cc
@@ -2927,15 +2927,14 @@ generalized_affine_image(const Variable var,
       const dimension_type eps_index = space_dim + 1;
       for (dimension_type i =  gen_sys.num_rows(); i-- > 0; )
 	if (gen_sys[i].is_point()) {
-	  Generator& g = gen_sys[i];
-	  // Add a `var'-displaced copy of `g' to the generator system.
-	  gen_sys.add_row(g);
+	  // Add a `var'-displaced copy of `gen_sys[i]' to the generator system.
+	  gen_sys.add_row(gen_sys[i]);
 	  if (relsym == GREATER_THAN)
 	    ++gen_sys[gen_sys.num_rows()-1][var_space_dim];
 	  else
 	    --gen_sys[gen_sys.num_rows()-1][var_space_dim];
-	  // Transform `g' into a closure point.
-	  g[eps_index] = 0;
+	  // Transform `gen_sys[i]' into a closure point.
+	  gen_sys[i][eps_index] = 0;
 	}
       clear_constraints_up_to_date();
       clear_generators_minimized();




More information about the PPL-devel mailing list