Index: remoting/src/main/java/hudson/remoting/Channel.java
===================================================================
--- remoting/src/main/java/hudson/remoting/Channel.java	(revision 998)
+++ remoting/src/main/java/hudson/remoting/Channel.java	(revision 999)
@@ -407,7 +407,7 @@
     }
 
     /*package*/ void unexport(int id) {
-        exportedObjects.unexport(id);
+        exportedObjects.unexportByOid(id);
     }
 
     /**
Index: remoting/src/main/java/hudson/remoting/ExportTable.java
===================================================================
--- remoting/src/main/java/hudson/remoting/ExportTable.java	(revision 998)
+++ remoting/src/main/java/hudson/remoting/ExportTable.java	(revision 999)
@@ -180,6 +180,16 @@
     }
 
     /**
+     * Removes the exported object for the specified oid from the table.
+     */
+    public synchronized void unexportByOid(Integer oid) {
+        if(oid==null)     return;
+        Entry e = table.get(oid);
+        if(e==null)    return; // presumably already unexported
+        e.release();
+    }
+
+    /**
      * Dumps the contents of the table to a file.
      */
     public synchronized void dump(PrintWriter w) throws IOException {