From c7fa0a279e9632a7c3aae56017a9aabf81afaa90 Mon Sep 17 00:00:00 2001 From: mattijs Date: Mon, 24 Nov 2008 17:18:51 +0000 Subject: [PATCH] out of range cell id --- .../general/findRefCell/findRefCell.C | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/finiteVolume/cfdTools/general/findRefCell/findRefCell.C b/src/finiteVolume/cfdTools/general/findRefCell/findRefCell.C index 321eeba6a8..ea2281266b 100644 --- a/src/finiteVolume/cfdTools/general/findRefCell/findRefCell.C +++ b/src/finiteVolume/cfdTools/general/findRefCell/findRefCell.C @@ -49,6 +49,22 @@ void Foam::setRefCell if (Pstream::master()) { refCelli = readLabel(dict.lookup(refCellName)); + + if (refCelli < 0 || refCelli >= field.mesh().nCells()) + { + FatalErrorIn + ( + "void Foam::setRefCell" + "(" + " const volScalarField&," + " const dictionary&," + " label& scalar&," + " bool" + ")" + ) << "Illegal master cellID " << refCelli + << ". Should be 0.." << field.mesh().nCells() + << exit(FatalError); + } } else { @@ -75,7 +91,7 @@ void Foam::setRefCell ) << "Unable to set reference cell for field " << field.name() << nl << " Reference point " << refPointName - << " found on multiple domains" << nl << abort(FatalError); + << " found on multiple domains" << nl << exit(FatalError); } } else @@ -92,7 +108,7 @@ void Foam::setRefCell ) << "Unable to set reference cell for field" << field.name() << nl << " Please supply either " << refCellName - << " or " << refPointName << nl << abort(FatalError); + << " or " << refPointName << nl << exit(FatalError); } refValue = readScalar(dict.lookup(refValueName));