From 2ca9ddce190914f345ec0fbd77b71c9dc82f00dd Mon Sep 17 00:00:00 2001
From: Tim Young <tim.young@lightsys.org>
Date: Mon, 8 Oct 2018 11:52:53 -0500
Subject: [PATCH] Fix reporting bug when doing replay

---
 EduNetworkBuilder/Network.cs        |  7 ++++---
 EduNetworkBuilder/NetworkBuilder.cs | 11 +++++++++++
 2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/EduNetworkBuilder/Network.cs b/EduNetworkBuilder/Network.cs
index ad4f38d..eb2bc89 100644
--- a/EduNetworkBuilder/Network.cs
+++ b/EduNetworkBuilder/Network.cs
@@ -874,7 +874,7 @@ namespace EduNetworkBuilder
             return tDests;
         }
 
-        public void TestForCompletion(bool report_as_done)
+        public void TestForCompletion(bool report_as_done, bool MarkAsDoneIfNotReporting=false)
         {
             NetworkDevice TmpDevice;
             bool PreviouslyUnsolved = !PuzzleIsSolved;  //Only if we have an unsolved puzzle
@@ -911,7 +911,8 @@ namespace EduNetworkBuilder
             }
             if (PuzzleCount == 0 && PreviouslyUnsolved)
             {
-                PuzzleIsSolved = true;
+                if(report_as_done || MarkAsDoneIfNotReporting)
+                    PuzzleIsSolved = true; //Only change this when we need to report it
                 if (NB.DebugTests) Console.WriteLine("Recognizing puzzle is solved: " + PuzzleName);
                 if (report_as_done)
                 {
@@ -1707,7 +1708,7 @@ namespace EduNetworkBuilder
                         //replay finished
                         ReplayInProgress = false;
                         //Try testing for completion?
-                        TestForCompletion(false);
+                        TestForCompletion(false, true);
                         //If we have succeeded, we need to mark it as passed
                         if (PuzzleIsSolved) Settings.RegisterReplayPassed();
                         //If we have failed to complete, we need to mark it as failed
diff --git a/EduNetworkBuilder/NetworkBuilder.cs b/EduNetworkBuilder/NetworkBuilder.cs
index d2ff8ed..f530915 100644
--- a/EduNetworkBuilder/NetworkBuilder.cs
+++ b/EduNetworkBuilder/NetworkBuilder.cs
@@ -2043,6 +2043,17 @@ namespace EduNetworkBuilder
                     LoadNetworkFromNetwork(theNet);
                 }
             }
+            if(OurSettings.ReplayMode)
+            {
+                //clear out the replay actions for this network
+                ActionCollection AC = OurSettings.GetUserActionCollection();
+                if (AC != null)
+                {
+                    NetworkAction NA = AC.GetCurrentNetAction();
+                    if (NA != null)
+                        NA.Actions.Clear();
+                }
+            }
             UpdateMenu();
             UpdateForm();
         }