Enhance the cache-writing policy.
diff --git a/lib/bcc/CacheReader.h b/lib/bcc/CacheReader.h
index e66503e..fd3516d 100644
--- a/lib/bcc/CacheReader.h
+++ b/lib/bcc/CacheReader.h
@@ -49,10 +49,13 @@
     std::map<std::string,
              std::pair<uint32_t, unsigned char const *> > mDependencies;
 
+    bool mIsContextSlotNotAvail;
+
   public:
     CacheReader()
       : mFile(NULL), mFileSize(0), mpHeader(NULL),
-        mpCachedDependTable(NULL), mpPragmaList(NULL), mpFuncTable(NULL) {
+        mpCachedDependTable(NULL), mpPragmaList(NULL), mpFuncTable(NULL),
+        mIsContextSlotNotAvail(false) {
     }
 
     ~CacheReader();
@@ -66,6 +69,10 @@
 
     ScriptCached *readCacheFile(FileHandle *file, Script *s);
 
+    bool isContextSlotNotAvail() const {
+      return mIsContextSlotNotAvail;
+    }
+
   private:
     bool readHeader();
     bool readStringPool();