diff --git includes/cache.inc includes/new_cache.inc
index c02b063..49aea91 100755
--- includes/cache.inc
+++ includes/new_cache.inc
@@ -39,6 +39,17 @@ function cache_get($cid, $table = 'cache') {
     // sess_read() in session.inc.
     else {
       if (isset($user->cache) && $user->cache > $cache->created) {
+        // get content types
+        $skip = variable_get('lifetime_ignore', array());
+        
+        $cache->data = db_decode_blob($cache->data);
+        if ($cache->serialized) {
+          $cache->data = unserialize($cache->data);
+        }
+        // ignore lifetime for nodereference-modalframe nodes
+        if ( $cache->data['#id'] == 'node-form' && in_array($cache->data['#node']->type, (array)$skip) ) {
+          return $cache;
+        }
         // This cache data is too old and thus not valid for us, ignore it.
         return 0;
       }
