mirror of
https://github.com/MAGICGrants/flutter_libsparkmobile.git
synced 2026-01-09 21:17:56 -05:00
loss of precision fixes
This commit is contained in:
@@ -761,9 +761,8 @@ abstract final class LibSpark {
|
||||
serializedCoins,
|
||||
required int privateRecipientsCount,
|
||||
}) {
|
||||
|
||||
final privateKeyPtr =
|
||||
privateKeyHex.to32BytesFromHex().unsignedCharPointer();
|
||||
privateKeyHex.to32BytesFromHex().unsignedCharPointer();
|
||||
|
||||
final serializedCoinsPtr = malloc.allocate<DartSpendCoinData>(
|
||||
sizeOf<DartSpendCoinData>() * serializedCoins.length);
|
||||
@@ -812,13 +811,11 @@ abstract final class LibSpark {
|
||||
malloc.free(result.ref.error);
|
||||
malloc.free(result);
|
||||
throw ex;
|
||||
} else {
|
||||
final fee = result.ref.fee;
|
||||
malloc.free(result);
|
||||
return fee;
|
||||
}
|
||||
|
||||
final fee = result.ref.fee;
|
||||
|
||||
malloc.free(result);
|
||||
|
||||
return fee;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -320,7 +320,7 @@ class FlutterLibsparkmobileBindings {
|
||||
ffi.Pointer<SparkFeeResult> Function(
|
||||
ffi.Pointer<ffi.UnsignedChar>,
|
||||
ffi.Int,
|
||||
ffi.Int,
|
||||
ffi.Int64,
|
||||
ffi.Int,
|
||||
ffi.Pointer<DartSpendCoinData>,
|
||||
ffi.Int,
|
||||
@@ -632,7 +632,7 @@ final class SparkSpendTransactionResult extends ffi.Struct {
|
||||
@ffi.Int()
|
||||
external int outputScriptsLength;
|
||||
|
||||
@ffi.Int()
|
||||
@ffi.Int64()
|
||||
external int fee;
|
||||
|
||||
@ffi.Int()
|
||||
@@ -685,6 +685,6 @@ final class DartSpendCoinData extends ffi.Struct {
|
||||
final class SparkFeeResult extends ffi.Struct {
|
||||
external ffi.Pointer<ffi.Char> error;
|
||||
|
||||
@ffi.Int()
|
||||
@ffi.Int64()
|
||||
external int fee;
|
||||
}
|
||||
|
||||
@@ -547,7 +547,7 @@ FFI_PLUGIN_EXPORT
|
||||
SparkFeeResult* estimateSparkFee(
|
||||
unsigned char* keyData,
|
||||
int index,
|
||||
int sendAmount,
|
||||
int64_t sendAmount,
|
||||
int subtractFeeFromAmount,
|
||||
struct DartSpendCoinData* coins,
|
||||
int coinsLength,
|
||||
@@ -573,7 +573,7 @@ SparkFeeResult* estimateSparkFee(
|
||||
|
||||
std::pair<CAmount, std::vector<CSparkMintMeta>> estimated = SelectSparkCoins(
|
||||
sendAmount,
|
||||
subtractFeeFromAmount,
|
||||
subtractFeeFromAmount > 0,
|
||||
cppCoins,
|
||||
privateRecipientsLength
|
||||
);
|
||||
|
||||
@@ -18,14 +18,6 @@
|
||||
FFI_PLUGIN_EXPORT
|
||||
const char* getAddress(unsigned char* keyData, int index, int diversifier, int isTestNet);
|
||||
|
||||
/*
|
||||
FFI_PLUGIN_EXPORT
|
||||
const char *createFullViewKey(const char* keyData, int index);
|
||||
|
||||
FFI_PLUGIN_EXPORT
|
||||
const char* createIncomingViewKey(const char* keyData, int index);
|
||||
*/
|
||||
|
||||
/*
|
||||
* FFI-friendly wrapper for spark::identifyCoin.
|
||||
*
|
||||
@@ -115,7 +107,7 @@ FFI_PLUGIN_EXPORT
|
||||
struct SparkFeeResult* estimateSparkFee(
|
||||
unsigned char* keyData,
|
||||
int index,
|
||||
int sendAmount,
|
||||
int64_t sendAmount,
|
||||
int subtractFeeFromAmount,
|
||||
struct DartSpendCoinData* coins,
|
||||
int coinsLength,
|
||||
|
||||
@@ -215,7 +215,7 @@ struct SparkSpendTransactionResult {
|
||||
struct OutputScript* outputScripts;
|
||||
int outputScriptsLength;
|
||||
|
||||
int fee;
|
||||
int64_t fee;
|
||||
|
||||
int isError;
|
||||
};
|
||||
@@ -251,7 +251,7 @@ struct DartSpendCoinData {
|
||||
|
||||
struct SparkFeeResult {
|
||||
char *error;
|
||||
int fee;
|
||||
int64_t fee;
|
||||
};
|
||||
|
||||
//#ifdef __cplusplus
|
||||
|
||||
Reference in New Issue
Block a user