]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/genericrelation/ExternalRequest.java
Multiple reader thread support for db client
[simantics/platform.git] / bundles / org.simantics.db.layer0 / src / org / simantics / db / layer0 / genericrelation / ExternalRequest.java
index b090c4a7602170ea33f699e80cfe0a3770773c5d..8cf5652ce0367f31baeca31e72c0f70425657c0c 100644 (file)
@@ -29,17 +29,20 @@ class ExternalRequest extends ParametrizedPrimitiveRead<Pair<GenericRelationInde
         this.procedure = procedure;
         parameter.first.addListener(graph, parameter.second, this);
     }
-    
+
     @Override
     public void unregistered() {
-        parameter.first.removeListener(session, parameter.second, this);
+        // Session will be null if the listener was not added at all.
+        if (session != null) {
+            parameter.first.removeListener(session, parameter.second, this);
+        }
     }
-    
+
     @Override
     public void run() {
         synchronized(getClass()) {
             procedure.execute(value++);
         }
     }
-    
+
 }
\ No newline at end of file