diff --git a/dumux/discretization/cellcentered/mpfa/fluxvariablescachefiller.hh b/dumux/discretization/cellcentered/mpfa/fluxvariablescachefiller.hh
index b0ced7e5123746dafb0f6d0b5776cd8f5a5eafd2..8b0863abf7f9375255d8a4ea22212f02d5a3b871 100644
--- a/dumux/discretization/cellcentered/mpfa/fluxvariablescachefiller.hh
+++ b/dumux/discretization/cellcentered/mpfa/fluxvariablescachefiller.hh
@@ -315,7 +315,8 @@ private:
         {
             for (unsigned int compIdx = 0; compIdx < numComponents; ++compIdx)
             {
-                if (phaseIdx == compIdx)
+                using FluidSystem = typename GET_PROP_TYPE(TypeTag, FluidSystem);
+                if (compIdx == FluidSystem::getMainComponent(phaseIdx))
                     continue;
 
                 // fill data in the handle