From f188271d8a541dd4faf005f93ac875bcc1289e8a Mon Sep 17 00:00:00 2001 From: Julien Schueller Date: Mon, 17 Feb 2025 18:03:23 +0100 Subject: [PATCH] slsqp: check p>n Closes #592 --- src/algs/slsqp/slsqp.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/algs/slsqp/slsqp.c b/src/algs/slsqp/slsqp.c index f572c8f1..d75f4a9b 100644 --- a/src/algs/slsqp/slsqp.c +++ b/src/algs/slsqp/slsqp.c @@ -2459,6 +2459,12 @@ nlopt_result nlopt_slsqp(unsigned n, nlopt_func f, void *f_data, unsigned max_cdim; int want_grad = 1; + if (p > n) + { + nlopt_stop_msg(stop, "slsqp: more equality constraints than variables"); + ret = NLOPT_INVALID_ARGS; + } + max_cdim = MAX2(nlopt_max_constraint_dim(m, fc), nlopt_max_constraint_dim(p, h)); length_work(&len_w, &len_jw, mpi, pi, ni);