From 22f28ef9d3d50df4543a46189afe30ab30a938be Mon Sep 17 00:00:00 2001 From: stevenj Date: Tue, 11 Sep 2007 18:42:53 -0400 Subject: [PATCH] detect a couple more out-of-memory conditions in CRS darcs-hash:20070911224253-c8de0-8b324a9d0f66ad6e54fbf585353c002b2e4b4dce.gz --- crs/crs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crs/crs.c b/crs/crs.c index e5c0ba8..b07e564 100644 --- a/crs/crs.c +++ b/crs/crs.c @@ -172,7 +172,7 @@ static nlopt_result crs_init(crs_data *d, int n, const double *x, memcpy(d->ps + 1, x, sizeof(double) * n); d->ps[0] = f(n, x, NULL, f_data); stop->nevals++; - rb_tree_insert(&d->t, d->ps); + if (!rb_tree_insert(&d->t, d->ps)) return NLOPT_OUT_OF_MEMORY; if (d->ps[0] < stop->minf_max) return NLOPT_MINF_MAX_REACHED; if (nlopt_stop_evals(stop)) return NLOPT_MAXEVAL_REACHED; if (nlopt_stop_time(stop)) return NLOPT_MAXTIME_REACHED; @@ -187,7 +187,7 @@ static nlopt_result crs_init(crs_data *d, int n, const double *x, } k[0] = f(n, k + 1, NULL, f_data); stop->nevals++; - rb_tree_insert(&d->t, k); + if (!rb_tree_insert(&d->t, k)) return NLOPT_OUT_OF_MEMORY; if (k[0] < stop->minf_max) return NLOPT_MINF_MAX_REACHED; if (nlopt_stop_evals(stop)) return NLOPT_MAXEVAL_REACHED; if (nlopt_stop_time(stop)) return NLOPT_MAXTIME_REACHED; -- 2.30.2