Use KeyError.
diff --git a/Lib/cmp.py b/Lib/cmp.py
index 434caee..32b77fa 100644
--- a/Lib/cmp.py
+++ b/Lib/cmp.py
@@ -34,7 +34,7 @@
 			# cached signatures match
 			return outcome
 		# stale cached signature(s)
-	except RuntimeError:
+	except KeyError:
 		# cache miss
 		pass
 	# really compare
diff --git a/Lib/dircache.py b/Lib/dircache.py
index 1eebbbc..9cdbc70 100644
--- a/Lib/dircache.py
+++ b/Lib/dircache.py
@@ -13,7 +13,7 @@
 	try:
 		cached_mtime, list = cache[path]
 		del cache[path]
-	except RuntimeError:
+	except KeyError:
 		cached_mtime, list = -1, []
 	try:
 		mtime = posix.stat(path)[8]