comparison liboctave/array/Range.cc @ 20491:7e9c752138ec stable

Fix 'descending' sort of Range objects (bug #45739). * Range.cc (sort_internal): When doing a descending sort, start at the max() value in the Range, rather than the rng_limit which may not be a part of the range itself.
author Rik <rik@octave.org>
date Thu, 20 Aug 2015 06:42:15 -0700
parents 4197fc428c7d
children 642ce72cf1ab
comparison
equal deleted inserted replaced
20481:d43675752d04 20491:7e9c752138ec
242 rng_inc = -rng_inc; 242 rng_inc = -rng_inc;
243 clear_cache (); 243 clear_cache ();
244 } 244 }
245 else if (! ascending && rng_base < rng_limit && rng_inc > 0.0) 245 else if (! ascending && rng_base < rng_limit && rng_inc > 0.0)
246 { 246 {
247 double tmp = rng_limit; 247 double tmp = max ();
248 rng_limit = min (); 248 rng_limit = min ();
249 rng_base = tmp; 249 rng_base = tmp;
250 rng_inc = -rng_inc; 250 rng_inc = -rng_inc;
251 clear_cache (); 251 clear_cache ();
252 } 252 }
272 clear_cache (); 272 clear_cache ();
273 reverse = true; 273 reverse = true;
274 } 274 }
275 else if (! ascending && rng_base < rng_limit && rng_inc > 0.0) 275 else if (! ascending && rng_base < rng_limit && rng_inc > 0.0)
276 { 276 {
277 double tmp = rng_limit; 277 double tmp = max ();
278 rng_limit = min (); 278 rng_limit = min ();
279 rng_base = tmp; 279 rng_base = tmp;
280 rng_inc = -rng_inc; 280 rng_inc = -rng_inc;
281 clear_cache (); 281 clear_cache ();
282 reverse = true; 282 reverse = true;