current = new CICacheItem(this, edl, asset);
append(current); current->checked_out = tid;
file = current->file;
- total_lock->unlock();
int result = file->open_file(preferences, asset, 1, 0);
+ total_lock->unlock();
if( result ) {
SET_TRACE
delete file;
int CICache::check_in(Asset *asset)
{
total_lock->lock("CICache::check_in");
+ CICacheItem *current = 0;
if( !check_outs ) {
- CICacheItem *current = first;
+ current = first;
while(current && strcmp(current->asset->path, asset->path) != 0)
current = NEXT;
if(current && current->checked_out) {
return result;
}
-void CICache::dump()
+void CICache::dump(FILE *fp)
{
CICacheItem *current;
total_lock->lock("CICache::dump");
- printf("CICache::dump total size %jd\n", get_memory_usage(0));
+ fprintf(fp, "CICache::dump total size %jd\n", get_memory_usage(0));
for(current = first; current; current = NEXT)
{
- printf("cache item %p asset %p %s age=%d\n",
- current, current->asset,
- current->asset->path, current->age);
+ fprintf(fp, "cache item %p asset %p %s age=%d checked_out=%p\n",
+ current, current->asset, current->asset->path,
+ current->age, (void*)current->checked_out);
}
total_lock->unlock();
}