do not co-op close channels with pending htlcs

This commit is contained in:
Janus 2018-11-05 18:48:00 +01:00 committed by SomberNight
parent 481b6c231a
commit 06f24fd11a
No known key found for this signature in database
GPG key ID: B33B5F232C6271E9

View file

@ -1152,6 +1152,8 @@ class Peer(PrintError):
@log_exceptions
async def close_channel(self, chan_id: bytes):
chan = self.channels[chan_id]
if len(chan.htlcs(LOCAL, only_pending=True)) > 0:
raise Exception('Can\'t co-operatively close channel with payments ongoing (pending HTLCs). Please wait, or force-close the channel.')
self.shutdown_received[chan_id] = asyncio.Future()
self.send_shutdown(chan)
payload = await self.shutdown_received[chan_id]