summaryrefslogtreecommitdiff
path: root/sys/src/libsat/satmore.c
diff options
context:
space:
mode:
authoraiju <devnull@localhost>2018-03-18 03:01:21 +0000
committeraiju <devnull@localhost>2018-03-18 03:01:21 +0000
commitd68417bc01ef1258e707d95d4785c189fcad5834 (patch)
tree2867ad1d4a9f722e532f1e94ebc5b4377fd4ff12 /sys/src/libsat/satmore.c
parent9f18b0f388a38a35ea8920fe3e98c7f8e3a41cf2 (diff)
satmore: don't try to override user defined variables
Diffstat (limited to 'sys/src/libsat/satmore.c')
-rw-r--r--sys/src/libsat/satmore.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/src/libsat/satmore.c b/sys/src/libsat/satmore.c
index 7a316f1ab..ac8b0fa09 100644
--- a/sys/src/libsat/satmore.c
+++ b/sys/src/libsat/satmore.c
@@ -11,11 +11,13 @@ satmore(SATSolve *s)
if(s == nil) return 1;
s->scrap = a = satrealloc(s, nil, s->nvar * sizeof(int));
n = 0;
- for(i = 0; i < s->nvar; i++)
+ for(i = 0; i < s->nvar; i++){
+ if((s->var[i].flags & VARUSER) != 0) continue;
switch(s->lit[2*i].val){
case 0: a[n++] = i+1; break;
case 1: a[n++] = -(i+1); break;
}
+ }
if(n > 0)
satadd1(s, a, n);
free(a);