From 61da7e576b38bd672c04d0e9288b0b8a660dfd16 Mon Sep 17 00:00:00 2001 From: jl777 Date: Sun, 24 Apr 2016 14:08:40 -0500 Subject: [PATCH] test --- iguana/iguana_unspents.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/iguana/iguana_unspents.c b/iguana/iguana_unspents.c index f8e336991..9ffdb26c8 100755 --- a/iguana/iguana_unspents.c +++ b/iguana/iguana_unspents.c @@ -235,6 +235,8 @@ int32_t iguana_volatilesmap(struct iguana_info *coin,struct iguana_ramchain *ram printf("volatilesmap.[%d] no rdata\n",ramchain->height/coin->chain->bundlesize); return(-1); } + if ( ramchain->debitsfileptr != 0 && ramchain->lastspendsfileptr != 0 ) + return(0); for (iter=0; iter<2; iter++) { sprintf(fname,"%s/%s%s/accounts/debits.%d",GLOBAL_DBDIR,iter==0?"ro/":"",coin->symbol,ramchain->height); @@ -2188,7 +2190,8 @@ int32_t iguana_convert(struct iguana_info *coin,int32_t helperid,struct iguana_b void iguana_RTramchainfree(struct iguana_info *coin,struct iguana_bundle *bp) { - //printf("free RTramchain\n"); + int32_t hdrsi; + printf("free RTramchain\n"); iguana_utxoupdate(coin,-1,0,0,0,0,-1); // free hashtables coin->RTheight = coin->balanceswritten * coin->chain->bundlesize; coin->RTgenesis = 0; @@ -2198,6 +2201,14 @@ void iguana_RTramchainfree(struct iguana_info *coin,struct iguana_bundle *bp) iguana_mempurge(&coin->RTmem); iguana_mempurge(&coin->RThashmem); coin->RTdatabad = 0; + for (hdrsi=coin->bundlescount-1; hdrsi>0; hdrsi--) + if ( (bp= coin->bundles[hdrsi]) == 0 ) + { + iguana_volatilespurge(coin,&bp->ramchain); + if ( iguana_volatilesmap(coin,&bp->ramchain) != 0 ) + printf("error mapping bundle.[%d]\n",hdrsi); + } + printf("done RTramchain\n"); } void *iguana_ramchainfile(struct iguana_info *coin,struct iguana_ramchain *dest,struct iguana_ramchain *R,struct iguana_bundle *bp,int32_t bundlei,struct iguana_block *block)