From 0463689f4e3c153c0d39a8ae8ad9facf3e6f71ea Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Mon, 24 Sep 2012 07:01:14 +0000
Subject: [PATCH]

---
 Common/CommandLine.cpp | 2 +-
 Common/GmshMessage.cpp | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/Common/CommandLine.cpp b/Common/CommandLine.cpp
index 6774decd55..8f05887e34 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 c3485057d9..152f0a2fda 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);
-- 
GitLab