Skip to content

Commit 13b817b

Browse files
fixes
1 parent e22c570 commit 13b817b

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

dash-spv-ffi/build.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ fn main() {
77

88
std::fs::create_dir_all(&output_path).unwrap();
99

10+
// Ensure the build script reruns when header-relevant files change
11+
println!("cargo:rerun-if-changed=cbindgen.toml");
12+
println!("cargo:rerun-if-changed=src");
13+
1014
let config = cbindgen::Config::from_file("cbindgen.toml").unwrap_or_default();
1115

1216
match cbindgen::Builder::new().with_crate(&crate_dir).with_config(config).generate() {
@@ -15,7 +19,8 @@ fn main() {
1519
println!("cargo:warning=Generated C header at {:?}", output_path);
1620
}
1721
Err(e) => {
18-
println!("cargo:warning=Failed to generate C header: {}", e);
22+
// Fail the build to avoid shipping stale headers
23+
panic!("Failed to generate C header via cbindgen: {}", e);
1924
}
2025
}
2126
}

key-wallet-ffi/include/key_wallet_ffi_test.h

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -424,12 +424,10 @@ typedef struct {
424424
} FFIAccountCollectionSummary;
425425

426426
/*
427-
FFI wrapper for ManagedWalletInfo that includes transaction checking capabilities
427+
Deprecated alias: historically a separate wrapper was used for transaction
428+
checking. It now aliases the canonical FFIManagedWalletInfo.
428429
*/
429-
typedef struct {
430-
void *inner;
431-
432-
} FFIManagedWallet;
430+
typedef FFIManagedWalletInfo FFIManagedWallet;
433431

434432
/*
435433
Address pool info
@@ -1460,7 +1458,7 @@ void account_collection_summary_free(FFIAccountCollectionSummary *summary)
14601458
- `error` must be a valid pointer to an FFIError or null
14611459
*/
14621460

1463-
bool managed_wallet_get_address_pool_info(const FFIManagedWallet *managed_wallet,
1461+
bool managed_wallet_get_address_pool_info(const FFIManagedWalletInfo *managed_wallet,
14641462
FFINetworks network,
14651463
FFIAccountType account_type,
14661464
unsigned int account_index,
@@ -1481,7 +1479,7 @@ bool managed_wallet_get_address_pool_info(const FFIManagedWallet *managed_wallet
14811479
- `error` must be a valid pointer to an FFIError or null
14821480
*/
14831481

1484-
bool managed_wallet_set_gap_limit(FFIManagedWallet *managed_wallet,
1482+
bool managed_wallet_set_gap_limit(FFIManagedWalletInfo *managed_wallet,
14851483
FFINetworks network,
14861484
FFIAccountType account_type,
14871485
unsigned int account_index,
@@ -1504,7 +1502,7 @@ bool managed_wallet_set_gap_limit(FFIManagedWallet *managed_wallet,
15041502
- `error` must be a valid pointer to an FFIError or null
15051503
*/
15061504

1507-
bool managed_wallet_generate_addresses_to_index(FFIManagedWallet *managed_wallet,
1505+
bool managed_wallet_generate_addresses_to_index(FFIManagedWalletInfo *managed_wallet,
15081506
const FFIWallet *wallet,
15091507
FFINetworks network,
15101508
FFIAccountType account_type,
@@ -1527,7 +1525,7 @@ bool managed_wallet_generate_addresses_to_index(FFIManagedWallet *managed_wallet
15271525
- `error` must be a valid pointer to an FFIError or null
15281526
*/
15291527

1530-
bool managed_wallet_mark_address_used(FFIManagedWallet *managed_wallet,
1528+
bool managed_wallet_mark_address_used(FFIManagedWalletInfo *managed_wallet,
15311529
FFINetworks network,
15321530
const char *address,
15331531
FFIError *error)
@@ -3050,7 +3048,7 @@ bool wallet_check_transaction(FFIWallet *wallet,
30503048
- `error` must be a valid pointer to an FFIError or null
30513049
- The returned pointer must be freed with `ffi_managed_wallet_free`
30523050
*/
3053-
FFIManagedWallet *wallet_create_managed_wallet(const FFIWallet *wallet, FFIError *error) ;
3051+
FFIManagedWalletInfo *wallet_create_managed_wallet(const FFIWallet *wallet, FFIError *error) ;
30543052

30553053
/*
30563054
Check if a transaction belongs to the wallet
@@ -3068,7 +3066,7 @@ bool wallet_check_transaction(FFIWallet *wallet,
30683066
- The affected_accounts array in the result must be freed with `transaction_check_result_free`
30693067
*/
30703068

3071-
bool managed_wallet_check_transaction(FFIManagedWallet *managed_wallet,
3069+
bool managed_wallet_check_transaction(FFIManagedWalletInfo *managed_wallet,
30723070
const FFIWallet *wallet,
30733071
FFINetworks network,
30743072
const uint8_t *tx_bytes,
@@ -3100,7 +3098,7 @@ bool managed_wallet_check_transaction(FFIManagedWallet *managed_wallet,
31003098
- `managed_wallet` must be a valid pointer to an FFIManagedWallet
31013099
- This function must only be called once per managed wallet
31023100
*/
3103-
void ffi_managed_wallet_free(FFIManagedWallet *managed_wallet) ;
3101+
void ffi_managed_wallet_free(FFIManagedWalletInfo *managed_wallet) ;
31043102

31053103
/*
31063104
Get the transaction classification for routing

0 commit comments

Comments
 (0)