Bug fix for serializing Boolean Const ...
[satune.git] / src / Serialize / deserializer.cc
index 2c4d7bb2fee5cbfb76f9fc3c1aa730408d00788f..548619fe221d45a380bb35933b08e08f552dafe1 100644 (file)
@@ -76,6 +76,9 @@ CSolver *Deserializer::deserialize() {
                case BOOLEANVAR:
                        deserializeBooleanVar();
                        break;
+               case BOOLCONST:
+                       deserializeBooleanConst();
+                       break;
                case ORDERCONST:
                        deserializeBooleanOrder();
                        break;
@@ -145,6 +148,15 @@ void Deserializer::deserializeBooleanVar() {
        map.put(b, solver->getBooleanVar(vtype).getBoolean());
 }
 
+void Deserializer::deserializeBooleanConst() {
+       BooleanVar *b;
+       myread(&b, sizeof(BooleanVar *));
+       bool istrue;
+       myread(&istrue, sizeof(bool));
+       map.put(b, istrue?solver->getBooleanTrue().getBoolean():
+                       solver->getBooleanFalse().getBoolean());
+}
+
 void Deserializer::deserializeBooleanOrder() {
        BooleanOrder *bo_ptr;
        myread(&bo_ptr, sizeof(BooleanOrder *));