use shared_ptr for device, cache

git-svn-id: https://profuse.googlecode.com/svn/branches/v2@345 aa027e90-d47c-11dd-86d7-074df07e0730
This commit is contained in:
ksherlock
2011-02-22 02:59:33 +00:00
parent 8e259ef1f2
commit 78d35bba08
17 changed files with 80 additions and 36 deletions

View File

@@ -233,9 +233,9 @@ void BlockDevice::sync(TrackSector ts)
}
*/
BlockCache *BlockDevice::createBlockCache()
BlockCachePointer BlockDevice::createBlockCache()
{
unsigned b = blocks();
unsigned size = std::max(16u, b / 16);
return new ConcreteBlockCache(this, size);
return ConcreteBlockCache::Create(shared_from_this(), size);
}