From 97ac486b58086f76434398931483d24836531cb1 Mon Sep 17 00:00:00 2001
From: Mark Olesen <Mark.Olesen@esi-group.com>
Date: Wed, 23 Jan 2019 13:25:18 +0100
Subject: [PATCH] BUG: registerCopy may fail for copy construct of regIOobject

- checkIn() was incorrectly conditional on the register state of the
  source object.

Partial patch from .org commit 6dc48b62d948
---
 src/OpenFOAM/db/regIOobject/regIOobject.C | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/OpenFOAM/db/regIOobject/regIOobject.C b/src/OpenFOAM/db/regIOobject/regIOobject.C
index 1669a43174b..d7aca3a4e9f 100644
--- a/src/OpenFOAM/db/regIOobject/regIOobject.C
+++ b/src/OpenFOAM/db/regIOobject/regIOobject.C
@@ -96,9 +96,12 @@ Foam::regIOobject::regIOobject(const regIOobject& rio, bool registerCopy)
     eventNo_(db().getEvent()),
     isPtr_(nullptr)
 {
-    if (registerCopy && rio.registered_)
+    if (registerCopy)
     {
-        const_cast<regIOobject&>(rio).checkOut();
+        if (rio.registered_)
+        {
+            const_cast<regIOobject&>(rio).checkOut();
+        }
         checkIn();
     }
 }
-- 
GitLab