Skip to content

Commit e8c7657

Browse files
committed
add entrypoint for releasing channel manager
1 parent 7a4799b commit e8c7657

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

bindings/src/channelmanager.rs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ ffi! {
3131
seed_len: usize,
3232
network: Ref<FFINetwork>,
3333
cfg: Ref<UserConfig>,
34-
monitor: Ref<FFIManyChannelMonitor>,
34+
monitor: FFIManyChannelMonitorHandle,
3535
logger: Ref<FFILogger>,
3636
broadcaster: Ref<FFIBroadCaster>,
3737
fee_est: Ref<FFIFeeEstimator>,
@@ -56,5 +56,11 @@ ffi! {
5656
unsafe_block!("We know chan_man is not null by wrapper macro. And we know `Out` is writable" => chan_man.init(HandleShared::alloc(chan_man_raw)));
5757
FFIResult::ok()
5858
}
59+
60+
fn release_ffi_channel_manager(handle: FFIArcChannelManagerHandle) -> FFIResult {
61+
unsafe_block!("The upstream caller guarantees the handle will not be accessed after being freed" => FFIArcChannelManagerHandle::dealloc(handle, |mut handle| {
62+
FFIResult::ok()
63+
}))
64+
}
5965
}
6066

bindings/src/logger.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,13 @@ ffi! {
2121

2222
use lightning::util::logger::{Record, Level};
2323

24+
use std::fmt::Arguments;
2425
/// Useful for testing low-level interoperability.
2526
#[cfg(feature = "debug_assertions")]
2627
ffi! {
2728
fn test_logger(handle: FFILoggerHandle) -> FFIResult {
2829
let logger: &FFILogger = unsafe_block!("" => handle.as_ref());
29-
let r: Record = Record::new(Level::Warn, std::format_args!("{}", "warn message for ffi."), "module_path", "logger.rs", 29);
30-
logger.log(&r);
30+
logger.log(&Record::new(Level::Warn, std::format_args!("{}", "warn message for ffi."), "module_path", "logger.rs", 29));
3131
println!("rust: finished calling test_logger");
3232
FFIResult::ok()
3333
}

0 commit comments

Comments
 (0)