diff --git a/trinidad-api/src/main/java/org/apache/myfaces/trinidad/change/BaseChangeManager.java b/trinidad-api/src/main/java/org/apache/myfaces/trinidad/change/BaseChangeManager.java
index e91bfa7..3437564 100644
--- a/trinidad-api/src/main/java/org/apache/myfaces/trinidad/change/BaseChangeManager.java
+++ b/trinidad-api/src/main/java/org/apache/myfaces/trinidad/change/BaseChangeManager.java
@@ -130,17 +130,8 @@
   {
     if (supportsDocumentPersistence(facesContext))
     {
-      DocumentChange docChange = null;
-if (compChange instanceof DocumentChange)
-      
-      {
-        docChange = (DocumentChange)compChange;
-      }
-      else
-      {
-        // try to get equivalent DocumentChange from ComponentChange
-        docChange = createDocumentChange(compChange);
-      }
+      // try to get equivalent DocumentChange from ComponentChange
+      DocumentChange docChange = createDocumentChange(compChange);
 
       if (docChange != null)
       {
diff --git a/trinidad-api/src/main/java/org/apache/myfaces/trinidad/change/ChangeManager.java b/trinidad-api/src/main/java/org/apache/myfaces/trinidad/change/ChangeManager.java
index 883cd73..7c46a3c 100644
--- a/trinidad-api/src/main/java/org/apache/myfaces/trinidad/change/ChangeManager.java
+++ b/trinidad-api/src/main/java/org/apache/myfaces/trinidad/change/ChangeManager.java
@@ -66,6 +66,12 @@
   protected static DocumentChange createDocumentChange(
     ComponentChange change)
   {
+    // the supplied ComponentChange could implement DocumentChange
+    if (change instanceof DocumentChange)
+    {
+      return (DocumentChange)change;
+    }
+    
     Class<? extends ComponentChange> changeClass = change.getClass();
 
     Object converterObject = null;
