diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/pcache.c | 5 | ||||
-rw-r--r-- | src/pcache.h | 2 |
2 files changed, 3 insertions, 4 deletions
diff --git a/src/pcache.c b/src/pcache.c index dc7d00f30..9687ac770 100644 --- a/src/pcache.c +++ b/src/pcache.c @@ -191,12 +191,9 @@ static void pcacheManageDirtyList(PgHdr *pPage, u8 addRemove){ p->eCreate = 2; } } - pPage->pDirtyNext = 0; - pPage->pDirtyPrev = 0; } if( addRemove & PCACHE_DIRTYLIST_ADD ){ - assert( pPage->pDirtyNext==0 && pPage->pDirtyPrev==0 && p->pDirty!=pPage ); - + pPage->pDirtyPrev = 0; pPage->pDirtyNext = p->pDirty; if( pPage->pDirtyNext ){ assert( pPage->pDirtyNext->pDirtyPrev==0 ); diff --git a/src/pcache.h b/src/pcache.h index 864ce5bb4..bbc2cb453 100644 --- a/src/pcache.h +++ b/src/pcache.h @@ -43,6 +43,8 @@ struct PgHdr { i16 nRef; /* Number of users of this page */ PgHdr *pDirtyNext; /* Next element in list of dirty pages */ PgHdr *pDirtyPrev; /* Previous element in list of dirty pages */ + /* NB: pDirtyNext and pDirtyPrev are undefined if the + ** PgHdr object is not dirty */ }; /* Bit values for PgHdr.flags */ |