Author: mreutegg
Date: Thu Jan 18 15:45:37 2018
New Revision: 1821514
URL: http://svn.apache.org/viewvc?rev=1821514&view=rev
Log:
OAK-7176: RevisionVector from empty string throws
StringIndexOutOfBoundsException
Merged 1821477,1821487 from trunk
Modified:
jackrabbit/oak/branches/1.8/ (props changed)
jackrabbit/oak/branches/1.8/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
jackrabbit/oak/branches/1.8/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/RevisionVectorTest.java
Propchange: jackrabbit/oak/branches/1.8/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Jan 18 15:45:37 2018
@@ -1,3 +1,3 @@
/jackrabbit/oak/branches/1.0:1665962
-/jackrabbit/oak/trunk:1820660-1820661,1820859,1820861,1820878,1820888,1820947,1821130,1821140-1821141,1821240,1821258,1821358,1821362,1821370,1821375
+/jackrabbit/oak/trunk:1820660-1820661,1820859,1820861,1820878,1820888,1820947,1821130,1821140-1821141,1821240,1821258,1821358,1821362,1821370,1821375,1821477,1821487
/jackrabbit/trunk:1345480
Modified:
jackrabbit/oak/branches/1.8/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.8/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java?rev=1821514&r1=1821513&r2=1821514&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.8/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
(original)
+++
jackrabbit/oak/branches/1.8/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
Thu Jan 18 15:45:37 2018
@@ -360,6 +360,9 @@ public final class RevisionVector implem
* @throws IllegalArgumentException if the string is malformed
*/
public static RevisionVector fromString(String s) {
+ if (s.isEmpty()) {
+ return EMPTY;
+ }
String[] list = s.split(",");
Revision[] revisions = new Revision[list.length];
for (int i = 0; i < list.length; i++) {
Modified:
jackrabbit/oak/branches/1.8/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/RevisionVectorTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/branches/1.8/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/RevisionVectorTest.java?rev=1821514&r1=1821513&r2=1821514&view=diff
==============================================================================
---
jackrabbit/oak/branches/1.8/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/RevisionVectorTest.java
(original)
+++
jackrabbit/oak/branches/1.8/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/RevisionVectorTest.java
Thu Jan 18 15:45:37 2018
@@ -429,6 +429,11 @@ public class RevisionVectorTest {
assertEquals(2, rv.getDimensions());
rv = rv.remove(1);
assertEquals(1, rv.getDimensions());
+ }
+ @Test
+ public void emptyAsFromString() {
+ RevisionVector empty = new RevisionVector();
+ assertEquals(empty, RevisionVector.fromString(empty.asString()));
}
}