More bug fix ...
authorHamed <hamed.gorjiara@gmail.com>
Mon, 11 Sep 2017 23:11:20 +0000 (16:11 -0700)
committerHamed <hamed.gorjiara@gmail.com>
Mon, 11 Sep 2017 23:11:20 +0000 (16:11 -0700)
src/Serialize/deserializer.cc

index de9c2fc1b997b22927b49b4e1a3200531a82c97e..71191198ee10781658094602f0dbbd10620ca40c 100644 (file)
@@ -170,7 +170,14 @@ void Deserializer::deserializeBooleanLogic(){
        myread(&size, sizeof(uint));
        Vector<BooleanEdge> members;
        for(uint i=0; i<size; i++){
-               
+               Boolean* member;
+               myread(&member, sizeof(Boolean *));
+               BooleanEdge tmp(member);
+               bool isNegated = tmp.isNegated();
+               ASSERT(map.contains(tmp.getBoolean()));
+               member = (Boolean*) map.get(tmp.getBoolean());
+               BooleanEdge res(member);
+               members.push( isNegated?res.negate():res );
        }
        map.put(bl_ptr, solver->applyLogicalOperation(op, members.expose(), size).getBoolean());
 }