diff --git a/registrasion/controllers/conditions.py b/registrasion/controllers/conditions.py
index 51078016..72e592a2 100644
--- a/registrasion/controllers/conditions.py
+++ b/registrasion/controllers/conditions.py
@@ -172,11 +172,20 @@ class ProductConditionController(IsMetByFilter, ConditionController):
 
         in_user_carts = Q(enabling_products__productitem__cart__user=user)
         released = commerce.Cart.STATUS_RELEASED
+        paid = commerce.Cart.STATUS_PAID
+        active = commerce.Cart.STATUS_ACTIVE
         in_released_carts = Q(
             enabling_products__productitem__cart__status=released
         )
+        not_in_paid_or_active_carts = ~(
+            Q(enabling_products__productitem__cart__status=paid) |
+            Q(enabling_products__productitem__cart__status=active)
+        )
+
         queryset = queryset.filter(in_user_carts)
-        queryset = queryset.exclude(in_released_carts)
+        queryset = queryset.exclude(
+            in_released_carts & not_in_paid_or_active_carts
+        )
 
         return queryset
 
diff --git a/registrasion/tests/test_flag.py b/registrasion/tests/test_flag.py
index 4952c8a7..3d8914a1 100644
--- a/registrasion/tests/test_flag.py
+++ b/registrasion/tests/test_flag.py
@@ -352,7 +352,7 @@ class FlagTestCases(RegistrationCartTestCase):
         items = commerce.ProductItem.objects.filter(cart=cart.cart)
         self.assertTrue([i for i in items if i.product == self.PROD_1])
 
-    def test_oops(self):
+    def test_product_stays_enabled_even_if_some_are_cancelled(self):
         ''' Flags should be enabled, even if *some* enabling products are cnx.
         Tests issue #68.
         '''
@@ -377,3 +377,8 @@ class FlagTestCases(RegistrationCartTestCase):
         # Even though cart1 has been cancelled, we have the item in cart2.
         # So we should be able to add PROD_1, which depends on PROD_2
         cart2.add_to_cart(self.PROD_1, 1)
+
+        cart2.set_quantity(self.PROD_2, 0)
+
+        with self.assertRaises(ValidationError):
+            cart2.add_to_cart(self.PROD_1, 1)