From 40bd183de215d9cc46bf080b44169b3328c58306 Mon Sep 17 00:00:00 2001
From: henry <Henry Weller h.weller@opencfd.co.uk>
Date: Mon, 19 May 2008 12:57:39 +0100
Subject: [PATCH] Added check for zero-size
 insertdictionaryIstreamMemberFunctionTable

---
 .../functionEntry/functionEntry.C             | 22 +++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/src/OpenFOAM/db/dictionary/functionEntries/functionEntry/functionEntry.C b/src/OpenFOAM/db/dictionary/functionEntries/functionEntry/functionEntry.C
index b0519498840..7e53591c642 100644
--- a/src/OpenFOAM/db/dictionary/functionEntries/functionEntry/functionEntry.C
+++ b/src/OpenFOAM/db/dictionary/functionEntries/functionEntry/functionEntry.C
@@ -63,6 +63,17 @@ bool Foam::functionEntry::insert
         "primitiveEntry& entry, Istream& is)"
     );
 
+    if (!insertprimitiveEntryIstreamMemberFunctionTablePtr_)
+    {
+        cerr<<"functionEntry::insert"
+            << "(const word&, dictionary&, primitiveEntry&, Istream&)"
+            << " not yet initialized, function = "
+            << functionName.c_str() << std::endl;
+
+        // return true to keep reading anyhow
+        return true;
+    }
+
     insertprimitiveEntryIstreamMemberFunctionTable::iterator mfIter =
         insertprimitiveEntryIstreamMemberFunctionTablePtr_->find(functionName);
 
@@ -97,6 +108,17 @@ bool Foam::functionEntry::insert
         "(const word& functionName, dictionary& parentDict, Istream& is)"
     );
 
+    if (!insertdictionaryIstreamMemberFunctionTablePtr_)
+    {
+        cerr<<"functionEntry::insert"
+            << "(const word&, dictionary&, Istream&)"
+            << " not yet initialized, function = "
+            << functionName.c_str() << std::endl;
+
+        // Return true to keep reading
+        return true;
+    }
+
     insertdictionaryIstreamMemberFunctionTable::iterator mfIter =
         insertdictionaryIstreamMemberFunctionTablePtr_->find(functionName);
 
-- 
GitLab