Author: lektran
Date: Fri Apr 2 03:37:33 2010
New Revision: 930156
URL:
http://svn.apache.org/viewvc?rev=930156&view=revLog:
Log an error and ignore decoratorContentId if it is the same as the contentId being rendered. Prevents a stack overflow.
Modified:
ofbiz/trunk/applications/content/src/org/ofbiz/content/content/ContentWorker.java
Modified: ofbiz/trunk/applications/content/src/org/ofbiz/content/content/ContentWorker.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/content/src/org/ofbiz/content/content/ContentWorker.java?rev=930156&r1=930155&r2=930156&view=diff==============================================================================
--- ofbiz/trunk/applications/content/src/org/ofbiz/content/content/ContentWorker.java (original)
+++ ofbiz/trunk/applications/content/src/org/ofbiz/content/content/ContentWorker.java Fri Apr 2 03:37:33 2010
@@ -222,6 +222,11 @@ public class ContentWorker implements or
// look for a content decorator
String contentDecoratorId = content.getString("decoratorContentId");
+ // Check that the decoratorContent is not the same as the current content
+ if (contentId.equals(contentDecoratorId)) {
+ Debug.logError("[" + contentId + "] decoratorContentId is the same as contentId, ignoring.", module);
+ contentDecoratorId = null;
+ }
// check to see if the decorator has already been run
boolean isDecorated = Boolean.TRUE.equals(templateContext.get("_IS_DECORATED_"));
if (!isDecorated && UtilValidate.isNotEmpty(contentDecoratorId)) {