Skip to content

Commit 5a66a76

Browse files
committed
f simplify somewhat
1 parent 1f5d64a commit 5a66a76

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

lightning/src/ln/channelmanager.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ use util::config::UserConfig;
5353
use util::events::{EventHandler, EventsProvider, MessageSendEvent, MessageSendEventsProvider, ClosureReason};
5454
use util::{byte_utils, events};
5555
use util::scid_utils::fake_scid;
56-
use util::ser::{BigSize, FixedLengthReader, Readable, ReadableArgs, MaybeReadable, Writeable, Writer};
56+
use util::ser::{BigSize, FixedLengthReader, Readable, ReadableArgs, MaybeReadable, Writeable, Writer, VecWriter};
5757
use util::logger::{Level, Logger};
5858
use util::errors::APIError;
5959

@@ -3716,14 +3716,14 @@ impl<Signer: Sign, M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> ChannelMana
37163716
fn get_htlc_temp_fail_err_and_data(&self, desired_err_code: u16, chan: &Channel<Signer>) -> (u16, Vec<u8>) {
37173717
debug_assert_eq!(desired_err_code & 0x1000, 0x1000);
37183718
if let Ok(upd) = self.get_channel_update_for_unicast(chan) {
3719-
let enc = if desired_err_code == 0x1000 | 20 {
3720-
let mut res = Vec::new();
3719+
let mut enc = VecWriter(Vec::with_capacity(upd.serialized_length() + 4));
3720+
if desired_err_code == 0x1000 | 20 {
37213721
// TODO: underspecified, follow https://github.com/lightning/bolts/issues/791
3722-
res.extend_from_slice(&byte_utils::be16_to_array(0));
3723-
res.extend_from_slice(&upd.encode_with_len());
3724-
res
3725-
} else { upd.encode_with_len() };
3726-
(desired_err_code, enc)
3722+
0u16.write(&mut enc).expect("Writes cannot fail");
3723+
}
3724+
(upd.serialized_length() as u16).write(&mut enc).expect("Writes cannot fail");
3725+
upd.write(&mut enc).expect("Writes cannot fail");
3726+
(desired_err_code, enc.0)
37273727
} else {
37283728
// If we fail to get a unicast channel_update, it implies we don't yet have an SCID,
37293729
// which means we really shouldn't have gotten a payment to be forwarded over this

0 commit comments

Comments
 (0)