     {
         var loaderInfo:LoaderInfo = e.target as LoaderInfo;
        
-        if (e.type == Event.COMPLETE && loaderInfo && !loaderInfo.childAllowsParent)
-        {
-            // Detected that our loader cannot be shared or cached. Mark 
-            // as such and notify and possibly active content requests.
-            addCacheEntry(loaderInfo.url, UNTRUSTED);
-            dispatchEvent(new LoaderInvalidationEvent(LoaderInvalidationEvent.INVALIDATE_LOADER, loaderInfo));
+        if (e.type == Event.COMPLETE && loaderInfo)
+        {
+            // Mark cache entry as complete.
+            var entry:CacheEntryNode = cachedData[loaderInfo.url];
+            if (entry)
+                entry.complete = true;
+            
+            if (!loaderInfo.childAllowsParent)
+            {
+                // Detected that our loader cannot be shared or cached. Mark 
+                // as such and notify and possibly active content requests.
+                addCacheEntry(loaderInfo.url, UNTRUSTED);
+                dispatchEvent(new LoaderInvalidationEvent(LoaderInvalidationEvent.INVALIDATE_LOADER, loaderInfo));
+            }
         }
         else if (e.type == IOErrorEvent.IO_ERROR || e.type == SecurityErrorEvent.SECURITY_ERROR)
         {

     *  @private
     */
    public var source:Object;
}

/**

                loaderContext.checkPolicyFile = true;
                loader.load(urlRequest, loaderContext);
            }
        }
        else
        {
            // Found a valid cache entry. Create a ContentRequest instance.
            contentRequest = new ContentRequest(this, cacheEntry.value as LoaderInfo, 
                true, cacheEntry.complete);
            
            // Promote in our MRU list.
            var node:LinkedListNode = cacheEntries.remove(cacheEntry);
            cacheEntries.unshift(node);
        }
