GitLab Mirror pushed to branch 2.10 at cms-community / hippo-jackrabbit

Commits:
915c1b59 by Marcel Reutegger at 2017-03-15T15:05:54+00:00
JCR-4121: ConcurrentModificationException in 
InternalVersionHistoryImpl.fixLegacy()

Merged revision 1787043 from trunk

git-svn-id: https://svn.apache.org/repos/asf/jackrabbit/branches/2.10@1787059 
13f79535-47bb-0310-9956-ffa450edef68

- - - - -


2 changed files:

- 
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java
- 
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java


Changes:

=====================================
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java
=====================================
--- 
a/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java
+++ 
b/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionHistoryImpl.java
@@ -167,7 +167,7 @@ class InternalVersionHistoryImpl extends 
InternalVersionItemImpl
     // fix legacy
     private void fixLegacy() throws RepositoryException {
         if (rootVersion.getSuccessors().isEmpty()) {
-            for (Name versionName : nameCache.keySet()) {
+            for (Name versionName : getVersionNames()) {
                 InternalVersionImpl v = createVersionInstance(versionName);
                 v.legacyResolveSuccessors();
             }


=====================================
jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java
=====================================
--- 
a/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java
+++ 
b/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionImpl.java
@@ -441,7 +441,10 @@ class InternalVersionImpl extends InternalVersionItemImpl
             for (InternalValue value : values) {
                 InternalVersionImpl v = (InternalVersionImpl)
                         versionHistory.getVersion(value.getNodeId());
-                v.internalAddSuccessor(this, false);
+                // version may be null if history is broken
+                if (v != null) {
+                    v.internalAddSuccessor(this, false);
+                }
             }
         }
     }



View it on GitLab: 
https://code.onehippo.org/cms-community/hippo-jackrabbit/commit/915c1b5984df148711fe4e0310476cfe3962ed7d
_______________________________________________
Hippocms-svn mailing list
Hippocms-svn@lists.onehippo.org
https://lists.onehippo.org/mailman/listinfo/hippocms-svn

Reply via email to