Package: lp-solve
Version: 5.5.0.10-5
Severity: normal
Tags: patch
Hi.
There is a bug in lp_matrix.c, which is triggered when you use
xli_CPLEX:
http://www.nabble.com/Segmentation-fault-at-command-line-tf3286912.html#a9142855
http://www.nabble.com/Small-Problem-with-%22lp_solve--rxli-xli_CPLEX%22-t3998586.html
A patch, which was fixed by Peter (see the second link above), is attached.
I am running sid, and tested lp_solve with the patch, which corrects the
problem:
- Without the patch:
$ lp_solve -rxli ./xli_CPLEX mylp.cplex
set_XLI: Successfully loaded './xli_CPLEX'
Segmentation fault
- With the patch, lp_solve runs and returns a correct solution.
J.
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (100, 'unstable'), (9, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.22.2 (PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL
set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages lp-solve depends on:
ii libc6 2.6.1-1 GNU C Library: Shared libraries
ii libsuitesparse 3.0.0-6.1 collection of libraries for comput
lp-solve recommends no packages.
-- no debconf information
diff -Nur lp-solve-5.5.0.10/lp_matrix.c lp-solve-5.5.0.10-new/lp_matrix.c
--- lp-solve-5.5.0.10/lp_matrix.c 2007-01-14 16:33:16.000000000 -0200
+++ lp-solve-5.5.0.10-new/lp_matrix.c 2007-08-23 09:44:55.000000000 -0300
@@ -1404,7 +1404,7 @@
return( 0 );
}
/* else if((row != NULL) && !mat->is_roworder) */
- else if(!isNZ && !mat->is_roworder)
+ else if(!isNZ && (row != NULL) && !mat->is_roworder)
row[0] = 0;
/* Capture OF definition in row mode */