makeMultisig function
Implementation
String makeMultisig(
{required List<String> infoList,
required int size,
required int threshold}) {
final List<Pointer<Char>> infoPointers =
infoList.map((info) => info.toNativeUtf8().cast<Char>()).toList();
final Pointer<Pointer<Char>> infoPointerPointer = calloc(size);
final errorBoxPointer = monero_flutter.buildErrorBoxPointer();
for (int i = 0; i < size; i++) {
infoPointerPointer[i] = infoPointers[i];
}
Pointer<Char> resultPointer =
monero_flutter.bindings.make_multisig(infoPointerPointer, size, threshold, errorBoxPointer);
final result = resultPointer.cast<Utf8>().toDartString();
for (var element in infoPointers) {
calloc.free(element);
}
calloc.free(infoPointerPointer);
calloc.free(resultPointer);
final errorInfo = monero_flutter.extractErrorInfo(errorBoxPointer);
if (0 != errorInfo.code) {
throw Exception(errorInfo.getErrorMessage());
}
return result;
}