Browse Source

fix

blackjok3r
blackjok3r 6 years ago
parent
commit
b4c9aa7777
  1. 20
      iguana/dpow/dpow_rpc.c

20
iguana/dpow/dpow_rpc.c

@ -295,31 +295,31 @@ cJSON *dpow_MoMoMdata(struct iguana_info *coin,char *symbol,int32_t kmdheight,ui
int32_t dpow_paxpending(struct supernet_info *myinfo,uint8_t *hex,int32_t hexsize,uint32_t *paxwdcrcp,bits256 MoM,uint32_t MoMdepth,uint16_t CCid,int32_t src_or_dest,struct dpow_block *bp) int32_t dpow_paxpending(struct supernet_info *myinfo,uint8_t *hex,int32_t hexsize,uint32_t *paxwdcrcp,bits256 MoM,uint32_t MoMdepth,uint16_t CCid,int32_t src_or_dest,struct dpow_block *bp)
{ {
struct iguana_info *coin,*kmdcoin=0; char *retstr,*hexstr; cJSON *retjson,*infojson, *srcinfojson; int32_t kmdheight=0,hexlen=0,n=0,ppMoMheight=0; uint32_t paxwdcrc; struct iguana_info *coin,*kmdcoin=0; char *retstr,*hexstr; cJSON *retjson,*infojson, *srcinfojson; int32_t kmdheight=0,hexlen=0,n=0,ppMoMheight=0; uint32_t paxwdcrc=0,CCid=0;
paxwdcrc = 0;
if ( dpow_smallopreturn(bp->srccoin->symbol) == 0 || src_or_dest != 0 ) if ( dpow_smallopreturn(bp->srccoin->symbol) == 0 || src_or_dest != 0 )
{ {
n += iguana_rwbignum(1,&hex[n],sizeof(MoM),MoM.bytes); n += iguana_rwbignum(1,&hex[n],sizeof(MoM),MoM.bytes);
MoMdepth = (MoMdepth & 0xffff) | ((uint32_t)CCid<<16); MoMdepth = (MoMdepth & 0xffff) | ((uint32_t)CCid<<16);
n += iguana_rwnum(1,&hex[n],sizeof(MoMdepth),(uint32_t *)&MoMdepth); n += iguana_rwnum(1,&hex[n],sizeof(MoMdepth),(uint32_t *)&MoMdepth);
if ( dpow_CCid(myinfo,bp->srccoin) > 1 && src_or_dest == 0 && strcmp(bp->destcoin->symbol,"KMD") == 0 ) //strncmp(bp->srccoin->symbol,"TXSCL",5) == 0 && if ( (srcinfojson= dpow_getinfo(myinfo,bp->srccoin)) != 0 )
{
CCid = juint(srcinfojson,"CCid");
if ( CCid > 1 && jint(srcinfojson,"ppMoMheight") != 0 )
ppMoMheight = jint(srcinfojson,"ppMoMheight");
free_json(srcinfojson);
printf("ppMoMheight.%i CCid.%i\n", ppMoMheight, CCid);
}
if ( CCid > 1 && src_or_dest == 0 && strcmp(bp->destcoin->symbol,"KMD") == 0 ) //strncmp(bp->srccoin->symbol,"TXSCL",5) == 0 &&
{ {
kmdcoin = bp->destcoin; kmdcoin = bp->destcoin;
coin = bp->srccoin; coin = bp->srccoin;
if ( (infojson= dpow_getinfo(myinfo,kmdcoin)) != 0 ) if ( (infojson= dpow_getinfo(myinfo,kmdcoin)) != 0 )
{ {
if ( (srcinfojson= dpow_getinfo(myinfo,coin)) != 0 )
{
if ( jint(srcinfojson,"ppMoMheight") != 0 )
ppMoMheight = jint(infojson,"ppMoMheight");
free_json(srcinfojson);
}
kmdheight = jint(infojson,"blocks"); kmdheight = jint(infojson,"blocks");
free_json(infojson); free_json(infojson);
} }
if ( (retjson= dpow_MoMoMdata(kmdcoin,bp->srccoin->symbol,kmdheight,bp->CCid)) != 0 ) if ( (retjson= dpow_MoMoMdata(kmdcoin,bp->srccoin->symbol,kmdheight,bp->CCid)) != 0 )
{ {
printf("ppMoMheight.%i\n", ppMoMheight);
if ( ppMoMheight != 0 && jstr(retjson,"error") != 0 ) if ( ppMoMheight != 0 && jstr(retjson,"error") != 0 )
{ {
// MoMoM returned NULL when after 2 MoM exist on the chain. // MoMoM returned NULL when after 2 MoM exist on the chain.

Loading…
Cancel
Save