more robust: assume that database is exclusive for this Progress instance --- always close on exit (see also bf377e10ff3b);
authorwenzelm
Mon, 04 Mar 2024 11:05:36 +0100
changeset 79760 dbdb8ba05b2b
parent 79759 5492439ffe89
child 79761 ec9b4a81620d
more robust: assume that database is exclusive for this Progress instance --- always close on exit (see also bf377e10ff3b);
src/Pure/Build/build_process.scala
src/Pure/System/progress.scala
--- a/src/Pure/Build/build_process.scala	Sun Mar 03 17:47:50 2024 +0100
+++ b/src/Pure/Build/build_process.scala	Mon Mar 04 11:05:36 2024 +0100
@@ -935,7 +935,7 @@
     Option(_host_database).foreach(_.close())
     Option(_build_cluster).foreach(_.close())
     progress match {
-      case db_progress: Database_Progress => db_progress.exit(close = true)
+      case db_progress: Database_Progress => db_progress.close()
       case _ =>
     }
   }
--- a/src/Pure/System/progress.scala	Sun Mar 03 17:47:50 2024 +0100
+++ b/src/Pure/System/progress.scala	Mon Mar 04 11:05:36 2024 +0100
@@ -378,7 +378,7 @@
         (results, true) })
   }
 
-  def exit(close: Boolean = false): Unit = synchronized {
+  def close(): Unit = synchronized {
     if (_context > 0) {
       _consumer.shutdown()
       _consumer = null
@@ -388,7 +388,7 @@
       }
       _context = 0
     }
-    if (close) db.close()
+    db.close()
   }
 
   private def sync_context[A](body: => A): A = synchronized {