Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2016-05-19 17:51:25 +0000
committerEike Stepper2016-05-19 17:51:25 +0000
commitdc1e69df0e9c5d49ce9cd61793ab403b254cf898 (patch)
tree1029519d9f90e23d07afe7281b0b991a58a980e3
parent963889d88f9d8b6efbad01e394d86a845b414741 (diff)
downloadcdo-dc1e69df0e9c5d49ce9cd61793ab403b254cf898.tar.gz
cdo-dc1e69df0e9c5d49ce9cd61793ab403b254cf898.tar.xz
cdo-dc1e69df0e9c5d49ce9cd61793ab403b254cf898.zip
[493189] Missing ROOT-Resource Check in View.isInOpenUnit(CDOID) causes StackOverflow
https://bugs.eclipse.org/bugs/show_bug.cgi?id=493189
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/View.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/View.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/View.java
index 77c2bcad49..8b73271929 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/View.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/View.java
@@ -275,6 +275,12 @@ public class View extends Lifecycle implements InternalView, CDOCommonView.Optio
if (revision != null)
{
CDOID parentID = revision.getResourceID();
+ if (parentID == id)
+ {
+ // This must be the root resource; break the recursion.
+ return false;
+ }
+
if (CDOIDUtil.isNull(parentID))
{
parentID = (CDOID)revision.getContainerID();

Back to the top