Index: trunk/xcache.c
===================================================================
--- trunk/xcache.c	(revision 1067)
+++ trunk/xcache.c	(revision 1106)
@@ -417,4 +417,5 @@
 {
 	HANDLE fileHandle;
+	LONG ret = EXCEPTION_CONTINUE_SEARCH;
 
 	SetUnhandledExceptionFilter(oldFilter);
@@ -436,5 +437,5 @@
 		if (ok) {
 			zend_error(E_ERROR, "Saved dump file to '%s'", crash_dumpPath);
-			return EXCEPTION_EXECUTE_HANDLER;
+			ret = EXCEPTION_EXECUTE_HANDLER;
 		}
 		else {
@@ -446,5 +447,10 @@
 	}
 
-	return EXCEPTION_CONTINUE_SEARCH;
+	if (xc_disable_on_crash) {
+		xc_disable_on_crash = 0;
+		xc_cacher_disable();
+	}
+
+	return ret;
 }
 /* }}} */
