diff --git a/Common/onelab.h b/Common/onelab.h
index cc83f11f9797d1a0d9e4ba7f5f455cd3ad968884..ee5460052ce38d383dde2aafdd4ecce3af9571e6 100644
--- a/Common/onelab.h
+++ b/Common/onelab.h
@@ -944,7 +944,10 @@ namespace onelab{
     {
       server::instance()->registerClient(this);
     }
-    virtual ~localClient(){}
+    virtual ~localClient()
+    {
+      server::instance()->unregisterClient(this);
+    }
     virtual bool set(const number &p){ return _set(p); }
     virtual bool set(const string &p){ return _set(p); }
     virtual bool set(const function &p){ return _set(p); }