diff --git a/Common/CommandLine.cpp b/Common/CommandLine.cpp index 6774decd55caa48a54336a8fefcada6f36727ee8..8f05887e345b87588af36e837ed43cc02d3b0676 100644 --- a/Common/CommandLine.cpp +++ b/Common/CommandLine.cpp @@ -149,7 +149,7 @@ void GetOptions(int argc, char *argv[]) } else if(!strcmp(argv[i] + 1, "onelab")) { i++; - if(argv[i] && argv[i + 1]){ + if(argv[i] && argv[i + 1] && argv[i + 1][0] != '-'){ Msg::InitializeOnelab(argv[i], argv[i + 1]); i += 2; } diff --git a/Common/GmshMessage.cpp b/Common/GmshMessage.cpp index c3485057d9bfab6d911632e5b57a73fe8c0759ef..152f0a2fdad7699e43a6e259e4d773f35354005e 100644 --- a/Common/GmshMessage.cpp +++ b/Common/GmshMessage.cpp @@ -637,7 +637,8 @@ void Msg::InitializeOnelab(const std::string &name, const std::string &sockname) if(_onelabClient) delete _onelabClient; if(sockname.empty()){ _onelabClient = new onelab::localClient("Gmsh"); - _onelabClient->fromFile(name); + if(!_onelabClient->fromFile(name)) + Error("Error loading onelab database '%s'", name.c_str()); } else{ onelab::remoteNetworkClient *c = new onelab::remoteNetworkClient(name, sockname);