diff --git a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicACMI/cyclicACMIFvPatch.C b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicACMI/cyclicACMIFvPatch.C
index b573d3a2b2667a6610cfef6cf526f959ee3d3d2c..3e6db16b4df54c7b2cfefbe8ced3a4ce6596ae1c 100644
--- a/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicACMI/cyclicACMIFvPatch.C
+++ b/src/finiteVolume/fvMesh/fvPatches/constraint/cyclicACMI/cyclicACMIFvPatch.C
@@ -311,36 +311,25 @@ Foam::tmp<Foam::labelField> Foam::cyclicACMIFvPatch::internalFieldTransfer
 
 void Foam::cyclicACMIFvPatch::movePoints()
 {
-    if (!cyclicACMIPolyPatch_.owner())
-    {
-        return;
-    }
+    // Update local and higher level areas
+    const bool updated = updateAreas();
 
-
-    if (!cyclicACMIPolyPatch_.upToDate(areaTime_))
+    // If anything changed update the mesh flux
+    if (cyclicACMIPolyPatch_.owner() && updated)
     {
         if (debug)
         {
-            Pout<< "cyclicACMIFvPatch::movePoints() : updating fv areas for "
-                << name() << " and " << this->nonOverlapPatch().name()
+            Pout<< "cyclicACMIFvPatch::movePoints() : areas updated for "
+                << name() << "; updating mesh flux now"
                 << endl;
         }
 
-
-        // Set the patch face areas to be consistent with the changes made
-        // at the polyPatch level
+        // Scale the mesh flux
 
         const fvPatch& nonOverlapPatch = this->nonOverlapPatch();
         const cyclicACMIFvPatch& nbrACMI = neighbPatch();
         const fvPatch& nbrNonOverlapPatch = nbrACMI.nonOverlapPatch();
 
-        resetPatchAreas(*this);
-        resetPatchAreas(nonOverlapPatch);
-        resetPatchAreas(nbrACMI);
-        resetPatchAreas(nbrNonOverlapPatch);
-
-        // Scale the mesh flux
-
         const labelListList& newSrcAddr = AMI().srcAddress();
         const labelListList& newTgtAddr = AMI().tgtAddress();
 
@@ -410,9 +399,6 @@ void Foam::cyclicACMIFvPatch::movePoints()
             const scalar w = 1.0 - cyclicACMIPolyPatch_.tgtMask()[facei];
             nbrPhiNonOverlapp[facei] *= w;
         }
-
-        // Mark my data to be up to date with ACMI polyPatch level
-        cyclicACMIPolyPatch_.setUpToDate(areaTime_);
     }
 }