diff --git a/src/OpenFOAM/db/Time/Time.C b/src/OpenFOAM/db/Time/Time.C index 0afa8d69b34d9b66c5b6c16add13ef60312902ca..b9eebc0d7f1604afc2442673f3e17c61e9d9c281 100644 --- a/src/OpenFOAM/db/Time/Time.C +++ b/src/OpenFOAM/db/Time/Time.C @@ -552,8 +552,9 @@ bool Foam::Time::end() const } -void Foam::Time::stopAt(const stopAtControls sa) const +bool Foam::Time::stopAt(const stopAtControls sa) const { + const bool changed = (stopAt_ != sa); stopAt_ = sa; // adjust endTime @@ -565,6 +566,7 @@ void Foam::Time::stopAt(const stopAtControls sa) const { endTime_ = GREAT; } + return changed; } diff --git a/src/OpenFOAM/db/Time/Time.H b/src/OpenFOAM/db/Time/Time.H index 7596fee0c9bee183effc5dedabc18855be1f6ff0..55b02813c998cfe80ee65da2a2a2af601ba03d39 100644 --- a/src/OpenFOAM/db/Time/Time.H +++ b/src/OpenFOAM/db/Time/Time.H @@ -406,7 +406,8 @@ public: //- Adjust the current stopAtControl. Note that this value // only persists until the next time the dictionary is read. - virtual void stopAt(const stopAtControls) const; + // Return true if the stopAtControl changed. + virtual bool stopAt(const stopAtControls) const; //- Reset the time and time-index to those of the given time virtual void setTime(const Time&);