diff --git a/meshmode/discretization/connection/opposite_face.py b/meshmode/discretization/connection/opposite_face.py
index 05d554832198f1c7f7ec10a06510ee011a2b7019..97570b338f9938165004a46c59fb3ec1570e0cbe 100644
--- a/meshmode/discretization/connection/opposite_face.py
+++ b/meshmode/discretization/connection/opposite_face.py
@@ -43,7 +43,7 @@ def _make_cross_face_batches(queue,
         return cl.array.to_device(queue, ary, array_queue=None)
 
     from meshmode.discretization.connection.direct import InterpolationBatch
-    if tgt_bdry_discr.ambient_dim == 1:
+    if tgt_bdry_discr.dim == 0:
         yield InterpolationBatch(
             from_group_index=i_src_grp,
             from_element_indices=to_dev(src_bdry_element_indices),
diff --git a/meshmode/discretization/poly_element.py b/meshmode/discretization/poly_element.py
index 7aba12a01f89bac01e507bbc5bfdf8c6c5a5cac8..436b1fb1229e2dc11bc56faa280cf0185763735c 100644
--- a/meshmode/discretization/poly_element.py
+++ b/meshmode/discretization/poly_element.py
@@ -177,7 +177,9 @@ class QuadratureSimplexElementGroup(SimplexElementGroupBase):
     @memoize_method
     def _quadrature_rule(self):
         dims = self.mesh_el_group.dim
-        if dims == 1:
+        if dims == 0:
+            return mp.Quadrature(np.empty((0, 1)), np.empty((0, 1)))
+        elif dims == 1:
             return mp.LegendreGaussQuadrature(self.order)
         else:
             return mp.XiaoGimbutasSimplexQuadrature(self.order, dims)