diff --git a/Post/PViewDataIO.cpp b/Post/PViewDataIO.cpp index 1d0138bd4ec4cf412cbd8f75cfe25c5fcc57edf2..5b1105003ea94103de0e70348958790d1462b106 100644 --- a/Post/PViewDataIO.cpp +++ b/Post/PViewDataIO.cpp @@ -215,8 +215,13 @@ bool PViewData::toVector(std::vector<std::vector<double> > &vec) bool PViewData::fromVector(const std::vector<std::vector<double> > &vec) { + if(empty() || !getNumTimeSteps()){ + Msg::Warning("Cannot import vector in an empty view; skipping"); + return false; + } + if((int)vec.size() != getNumTimeSteps()){ - Msg::Error("Incompatible number of steps in vector (%d) and view (%d)", + Msg::Error("Incompatible number of steps in vector for view import (%d!=%d)", (int)vec.size(), getNumTimeSteps()); return false; } @@ -234,7 +239,8 @@ bool PViewData::fromVector(const std::vector<std::vector<double> > &vec) setValue(step, ent, ele, nod, comp, vec[step][i++]); } else{ - Msg::Error("Bad index (%d) in vector (%d)", i, (int)vec[step].size()); + Msg::Error("Bad index (%d) in vector (%d) for view import", + i, (int)vec[step].size()); return false; } }