diff options
Diffstat (limited to 'external/lpsolve/lpsolve-ubsan.patch.0')
-rw-r--r-- | external/lpsolve/lpsolve-ubsan.patch.0 | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/external/lpsolve/lpsolve-ubsan.patch.0 b/external/lpsolve/lpsolve-ubsan.patch.0 new file mode 100644 index 0000000000..7a5e308c6e --- /dev/null +++ b/external/lpsolve/lpsolve-ubsan.patch.0 @@ -0,0 +1,22 @@ +--- lp_presolve.c ++++ lp_presolve.c +@@ -168,7 +168,7 @@ + if(isprimal) { + if(psdata->primalundo != NULL) + mat = psdata->primalundo->tracker; +- solution = lp->full_solution + lp->presolve_undo->orig_rows; ++ solution = lp->full_solution == NULL ? NULL : lp->full_solution + lp->presolve_undo->orig_rows; + slacks = lp->full_solution; + } + else { +--- lp_pricePSE.c ++++ lp_pricePSE.c +@@ -145,7 +147,7 @@ + + /* Store the active/current pricing type */ + if(isdual == AUTOMATIC) +- isdual = (MYBOOL) lp->edgeVector[0]; ++ isdual = lp->edgeVector[0] != 0.0; + else + lp->edgeVector[0] = isdual; + |