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 2006/05/26 12:40:01 UTC
svn commit: r409630 -
/jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/NodeImpl.java
Author: jukka
Date: Fri May 26 03:40:01 2006
New Revision: 409630
URL: http://svn.apache.org/viewvc?rev=409630&view=rev
Log:
1.0: Merged revision 408873: JCR-437
Modified:
jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/NodeImpl.java
Modified: jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/NodeImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/NodeImpl.java?rev=409630&r1=409629&r2=409630&view=diff
==============================================================================
--- jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/NodeImpl.java (original)
+++ jackrabbit/branches/1.0/jackrabbit/src/main/java/org/apache/jackrabbit/core/NodeImpl.java Fri May 26 03:40:01 2006
@@ -3804,9 +3804,12 @@
// only remove OPV=Copy nodes
n.internalRemove(true);
} else if (n.getDefinition().getOnParentVersion() == OnParentVersionAction.VERSION) {
- // only remove, if node to be restored does not contain child
- UUID vhUUID = new UUID(n.getProperty(QName.JCR_VERSIONHISTORY).getString());
- if (!freeze.hasFrozenHistory(vhUUID)) {
+ // only remove, if node to be restored does not contain child,
+ // or if restored child is not versionable
+ UUID vhUUID = n.hasProperty(QName.JCR_VERSIONHISTORY)
+ ? new UUID(n.getProperty(QName.JCR_VERSIONHISTORY).getString())
+ : null;
+ if (vhUUID == null || !freeze.hasFrozenHistory(vhUUID)) {
n.internalRemove(true);
}
}