Issue 1242657: list(obj) can swallow KeyboardInterrupt.
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index 4e6f901..4d7dec1 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -268,6 +268,8 @@
 
 	/* Guess a result list size. */
 	len = _PyObject_LengthHint(seq, 8);
+	if (len == -1)
+		goto Fail_it;
 
 	/* Get a result list. */
 	if (PyList_Check(seq) && seq->ob_refcnt == 1) {