diff --git a/src/backends/regex.c b/src/backends/regex.c
index fa695d94e8b4cf5e8621eca6651c2537a85b8d84..df9a52d7ee6a8d5ee09699e3ab42bcbc9ad5cbc4 100644
--- a/src/backends/regex.c
+++ b/src/backends/regex.c
@@ -115,7 +115,7 @@ void* h_rvm_run__m(HAllocator *mm__, HRVMProg *prog, const uint8_t* input, size_
 	  hi = (arg >> 8) & 0xff;
 	  lo = arg & 0xff;
 	  THREAD.ip++;
-	  if (ch < lo && ch > hi)
+	  if (ch < lo || ch > hi)
 	    ipq_top--; // terminate thread
 	  goto next_insn;
 	case RVM_GOTO: