diff --git a/Lib/linecache.py b/Lib/linecache.py
index 811f27f..4b97be3 100644
--- a/Lib/linecache.py
+++ b/Lib/linecache.py
@@ -36,8 +36,12 @@
 
     if filename in cache:
         return cache[filename][2]
-    else:
+
+    try:
         return updatecache(filename, module_globals)
+    except MemoryError:
+        clearcache()
+        return []
 
 
 def checkcache(filename=None):
diff --git a/Lib/test/test_linecache.py b/Lib/test/test_linecache.py
index b5f80a4..6f7ecd1 100644
--- a/Lib/test/test_linecache.py
+++ b/Lib/test/test_linecache.py
@@ -124,6 +124,22 @@
                 self.assertEqual(line, getline(source_name, index + 1))
                 source_list.append(line)
 
+    def test_memoryerror(self):
+        lines = linecache.getlines(FILENAME)
+        self.assertTrue(lines)
+        def raise_memoryerror(*args, **kwargs):
+            raise MemoryError
+        with support.swap_attr(linecache, 'updatecache', raise_memoryerror):
+            lines2 = linecache.getlines(FILENAME)
+        self.assertEqual(lines2, lines)
+
+        linecache.clearcache()
+        with support.swap_attr(linecache, 'updatecache', raise_memoryerror):
+            lines3 = linecache.getlines(FILENAME)
+        self.assertEqual(lines3, [])
+        self.assertEqual(linecache.getlines(FILENAME), lines)
+
+
 def test_main():
     support.run_unittest(LineCacheTests)
 
