You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by ju...@apache.org on 2009/03/31 12:10:37 UTC
svn commit: r760386 -
/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/SharedItemStateManager.java
Author: jukka
Date: Tue Mar 31 10:10:34 2009
New Revision: 760386
URL: http://svn.apache.org/viewvc?rev=760386&view=rev
Log:
JCR-2023: WorkspaceInfo.dispose() does not deregister SharedItemStateManager from virtual item state providers
Applied patch by Przemo Pakulski
Modified:
jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/SharedItemStateManager.java
Modified: jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/SharedItemStateManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/SharedItemStateManager.java?rev=760386&r1=760385&r2=760386&view=diff
==============================================================================
--- jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/SharedItemStateManager.java (original)
+++ jackrabbit/trunk/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/SharedItemStateManager.java Tue Mar 31 10:10:34 2009
@@ -446,6 +446,12 @@
* Disposes this <code>SharedItemStateManager</code> and frees resources.
*/
public void dispose() {
+ // remove virtual item state providers (see JCR-2023)
+ for (int i = 0; i < virtualProviders.length; i++) {
+ virtualProviders[i].removeListener(this);
+ }
+ virtualProviders = new VirtualItemStateProvider[0];
+
// clear cache
cache.evictAll();
}