diff --git a/meshmode/discretization/connection/__init__.py b/meshmode/discretization/connection/__init__.py
index fcb6cc6983bc1d08cb8e2878ccc5b748c3e4b573..c4881c4f366619b4484156ae740cca3728ddc590 100644
--- a/meshmode/discretization/connection/__init__.py
+++ b/meshmode/discretization/connection/__init__.py
@@ -371,9 +371,11 @@ class DiscretizationConnection(object):
         if vec.shape != (self.from_discr.nnodes,):
             raise ValueError("invalid shape of incoming resampling data")
 
-        for i_tgrp, (tgrp, sgrp, cgrp) in enumerate(
-                zip(self.to_discr.groups, self.from_discr.groups, self.groups)):
+        for i_tgrp, (tgrp, cgrp) in enumerate(
+                zip(self.to_discr.groups, self.groups)):
             for i_batch, batch in enumerate(cgrp.batches):
+                sgrp = self.from_discr.groups[batch.from_group_index]
+
                 if not len(batch.from_element_indices):
                     continue