Fixed bug 1729294
diff --git a/httplib2/__init__.py b/httplib2/__init__.py
index 63ef1a2..0fa2e06 100644
--- a/httplib2/__init__.py
+++ b/httplib2/__init__.py
@@ -292,7 +292,10 @@
                 freshness_lifetime = 0
         elif response_headers.has_key('expires'):
             expires = email.Utils.parsedate_tz(response_headers['expires'])
-            freshness_lifetime = max(0, calendar.timegm(expires) - date)
+            if None == expires:
+                freshness_lifetime = 0
+            else:
+                freshness_lifetime = max(0, calendar.timegm(expires) - date)
         else:
             freshness_lifetime = 0
         if cc.has_key('max-age'):
diff --git a/httplib2test.py b/httplib2test.py
index 27e1a2d..f6dbdb7 100755
--- a/httplib2test.py
+++ b/httplib2test.py
@@ -972,6 +972,16 @@
         time.sleep(3)
         self.assertEqual("STALE", httplib2._entry_disposition(response_headers, request_headers))
 
+    def testExpiresZero(self):
+        now = time.time()
+        response_headers = {
+            'date': time.strftime("%a, %d %b %Y %H:%M:%S GMT", time.gmtime(now)),
+            'expires': "0",
+        }
+        request_headers = {
+        }
+        self.assertEqual("STALE", httplib2._entry_disposition(response_headers, request_headers))
+
     def testExpirationModelDateOnly(self):
         now = time.time()
         response_headers = {