fix possible ref problem
This commit is contained in:
parent
4c32e5e35b
commit
31ee42e384
|
@ -79,7 +79,12 @@ SPage *tdbPCacheFetch(SPCache *pCache, const SPgid *pPgid, bool alcNewPage) {
|
||||||
SPage *pPage;
|
SPage *pPage;
|
||||||
|
|
||||||
tdbPCacheLock(pCache);
|
tdbPCacheLock(pCache);
|
||||||
|
|
||||||
pPage = tdbPCacheFetchImpl(pCache, pPgid, alcNewPage);
|
pPage = tdbPCacheFetchImpl(pCache, pPgid, alcNewPage);
|
||||||
|
if (pPage) {
|
||||||
|
TDB_REF_PAGE(pPage);
|
||||||
|
}
|
||||||
|
|
||||||
tdbPCacheUnlock(pCache);
|
tdbPCacheUnlock(pCache);
|
||||||
|
|
||||||
return pPage;
|
return pPage;
|
||||||
|
@ -129,7 +134,6 @@ static SPage *tdbPCacheFetchImpl(SPCache *pCache, const SPgid *pPgid, bool alcNe
|
||||||
if (pPage) {
|
if (pPage) {
|
||||||
tdbPCachePinPage(pPage);
|
tdbPCachePinPage(pPage);
|
||||||
}
|
}
|
||||||
TDB_REF_PAGE(pPage);
|
|
||||||
return pPage;
|
return pPage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -158,7 +162,6 @@ static SPage *tdbPCacheFetchImpl(SPCache *pCache, const SPgid *pPgid, bool alcNe
|
||||||
pPage->pLruNext = NULL;
|
pPage->pLruNext = NULL;
|
||||||
pPage->pPager = NULL;
|
pPage->pPager = NULL;
|
||||||
tdbPCacheAddPageToHash(pPage);
|
tdbPCacheAddPageToHash(pPage);
|
||||||
TDB_REF_PAGE(pPage);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return pPage;
|
return pPage;
|
||||||
|
|
Loading…
Reference in New Issue