Browse Source

Fix

pull/4/head
Mihailo Milenkovic 6 years ago
parent
commit
02863976d1
  1. 49
      src/cc/dapps/oraclefeed.c

49
src/cc/dapps/oraclefeed.c

@ -770,12 +770,12 @@ int32_t get_gatewaysinfo(char *refcoin,char *acname,char *depositaddr,int32_t *M
int32_t tx_has_voutaddress(char *refcoin,char *acname,bits256 txid,char *coinaddr)
{
cJSON *txobj,*vouts,*vout,*sobj,*addresses; char *addr,str[65]; int32_t i,j,n,numvouts,retval = 0;
cJSON *txobj,*vouts,*vout,*vins,*vin,*sobj,*addresses; char *addr,str[65]; int32_t i,j,n,numarray,retval = 0, hasvout=0;
if ( (txobj= get_rawtransaction(refcoin,acname,txid)) != 0 )
{
if ( (vouts= jarray(&numvouts,txobj,"vout")) != 0 )
if ( (vouts= jarray(&numarray,txobj,"vout")) != 0 )
{
for (i=0; i<numvouts; i++)
for (i=0; i<numarray; i++)
{
vout = jitem(vouts,i);
if ( (sobj= jobj(vout,"scriptPubKey")) != 0 )
@ -788,13 +788,24 @@ int32_t tx_has_voutaddress(char *refcoin,char *acname,bits256 txid,char *coinadd
if ( strcmp(addr,coinaddr) == 0 )
{
//fprintf(stderr,"found %s in %s v%d\n",coinaddr,bits256_str(str,txid),i);
retval = 1;
hasvout = 1;
}
}
}
}
}
}
if (vins=jarray(&numarray,txobj,"vin")!=0)
{
for (int i=0;j<numarray;i++)
{
if ((vin=jitem(vins,i))!=0 && validateaddress(refcoin,acname,jstr(vin,"address"),"ismine")==0)
{
retval=1;
break;
}
}
}
free_json(txobj);
}
return(retval);
@ -813,7 +824,11 @@ int32_t markerfromthisnode(char *refcoin,char *acname,char *coinaddr)
{
for (int j=0;j<m;j++)
{
if ((vin=jitem(vins,j))!=0 && validateaddress(refcoin,acname,jstr(vin,"address"),"ismine")==0) num=1;
if ((vin=jitem(vins,j))!=0 && validateaddress(refcoin,acname,jstr(vin,"address"),"ismine")==0)
{
num=1;
break;
}
}
free_json(array);
}
@ -827,26 +842,12 @@ int32_t markerfromthisnode(char *refcoin,char *acname,char *coinaddr)
{
for (i=0; i<n; i++)
{
tmptxid = jbits256i(array,i);
if ((bits256_nonz(tmptxid)!=0 && (rawtx=get_rawtransaction(refcoin,acname,tmptxid))!=0 && (vins=jarray(&m,rawtx,"vin"))!=0)
{
for (int j=0;j<m;j++)
{
if ((vin=jitem(vins,j))!=0 && validateaddress(refcoin,acname,jstr(vin,"address"),"ismine")==0)
{
num=1;
break;
}
}
free_json(array);
txid = jbits256i(array,i);
if ( tx_has_voutaddress(refcoin,acname,txid,coinaddr) > 0 )
{
num = 1;
break;
}
if (num==1) break;
// if ( tx_has_voutaddress(refcoin,acname,txid,coinaddr) > 0 )
// {
// num = 1;
// break;
// }
}
}
free_json(array);

Loading…
Cancel
Save