diff --git a/src/hb-aat-layout-common-private.hh b/src/hb-aat-layout-common-private.hh
index d62bafc..b5395bb 100644
--- a/src/hb-aat-layout-common-private.hh
+++ b/src/hb-aat-layout-common-private.hh
@@ -615,13 +615,7 @@
 	      machine (machine_),
 	      buffer (buffer_),
 	      num_glyphs (face_->get_num_glyphs ()),
-	      last_zero (0),
-	      dont_advance_set (nullptr) {}
-
-  inline ~StateTableDriver (void)
-  {
-    hb_set_destroy (dont_advance_set);
-  }
+	      last_zero (0) {}
 
   template <typename context_t>
   inline void drive (context_t *c)
@@ -648,27 +642,7 @@
       if (unlikely (!c->transition (this, entry)))
         break;
 
-      if (entry->flags & context_t::DontAdvance)
-      {
-        if (!last_was_dont_advance)
-	{
-	  if (dont_advance_set)
-	    dont_advance_set->clear ();
-	  else
-	    dont_advance_set = hb_set_create ();
-	}
-
-	unsigned int key = info[buffer->idx].codepoint ^ (state << 16);
-	if (likely (!dont_advance_set->has (key)))
-	{
-	  dont_advance_set->add (key);
-	  last_was_dont_advance = true;
-	}
-	else
-	  last_was_dont_advance = false;
-      }
-      else
-        last_was_dont_advance = false;
+      last_was_dont_advance = (entry->flags & context_t::DontAdvance) && buffer->max_ops--;
 
       state = entry->newState;
 
@@ -692,9 +666,6 @@
   hb_buffer_t *buffer;
   unsigned int num_glyphs;
   unsigned int last_zero;
-
-  private:
-  hb_set_t *dont_advance_set; /* Infinite-loop detection */
 };
 
 
