Don't throw error closing non opened objects

Project: http://git-wip-us.apache.org/repos/asf/incubator-wave/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-wave/commit/4376f6f3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-wave/tree/4376f6f3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-wave/diff/4376f6f3

Branch: refs/heads/swellrt
Commit: 4376f6f38b7f825f77482b37711750ecc47a6086
Parents: 2e8fbb9
Author: Pablo Ojanguren <[email protected]>
Authored: Thu Sep 8 17:06:46 2016 +0200
Committer: Pablo Ojanguren <[email protected]>
Committed: Thu Sep 8 17:06:46 2016 +0200

----------------------------------------------------------------------
 wave/src/main/java/org/swellrt/api/SwellRT.java | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-wave/blob/4376f6f3/wave/src/main/java/org/swellrt/api/SwellRT.java
----------------------------------------------------------------------
diff --git a/wave/src/main/java/org/swellrt/api/SwellRT.java 
b/wave/src/main/java/org/swellrt/api/SwellRT.java
index 8077c4d..abb7cec 100644
--- a/wave/src/main/java/org/swellrt/api/SwellRT.java
+++ b/wave/src/main/java/org/swellrt/api/SwellRT.java
@@ -557,16 +557,20 @@ public class SwellRT implements EntryPoint, 
UnsavedDataListener {
     String id = extractWaveIdParameter(parameters);
     Preconditions.checkArgument(id != null, "Missing object or id");
     WaveId waveId = WaveId.deserialise(id);
-    Preconditions.checkArgument(waveRegistry.containsKey(waveId), "Object is 
not open");    
+    
+    if (!waveRegistry.containsKey(waveId)) {
+      return;
+    }
     
     for (TextEditor e: editorRegistry.values())
       if (e.getWaveId().equals(waveId))
         e.cleanUp();
-    
-    waveRegistry.remove(waveId).destroy();
+
     ModelJS co = objectRegistry.get(waveId);
     objectRegistry.remove(waveId);
     SwellRTUtils.deleteJsObject(co);   
+    
+    waveRegistry.remove(waveId).destroy();
   }
 
   

Reply via email to