Skip to content

Commit 4df8cd0

Browse files
authored
Remove usage of ModifyPimp (#3034)
This breaks the deterministic build, most likely because of the usage of reflection internally.
1 parent 57b455c commit 4df8cd0

File tree

1 file changed

+13
-2
lines changed
  • eclair-core/src/main/scala/fr/acinq/eclair/channel/fsm

1 file changed

+13
-2
lines changed

eclair-core/src/main/scala/fr/acinq/eclair/channel/fsm/Channel.scala

+13-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import akka.actor.typed.scaladsl.Behaviors
2020
import akka.actor.typed.scaladsl.adapter.{ClassicActorContextOps, actorRefAdapter}
2121
import akka.actor.{Actor, ActorContext, ActorRef, FSM, OneForOneStrategy, PossiblyHarmful, Props, SupervisorStrategy, typed}
2222
import akka.event.Logging.MDC
23-
import com.softwaremill.quicklens.ModifyPimp
2423
import fr.acinq.bitcoin.scalacompat.Crypto.{PrivateKey, PublicKey}
2524
import fr.acinq.bitcoin.scalacompat.{ByteVector32, Satoshi, SatoshiLong, Transaction, TxId}
2625
import fr.acinq.eclair.Logs.LogCategory
@@ -2690,7 +2689,19 @@ class Channel(val nodeParams: NodeParams, val wallet: OnChainChannelFunder with
26902689
// caution!
26912690
log.warning("force-closing with fundingTxIndex reset to {} (concurrent funding transactions: {})", resetFundingTxIndex, data.commitments.active.filter(_.fundingTxIndex > resetFundingTxIndex).map(_.fundingTxId).mkString(", "))
26922691
replyTo ! RES_SUCCESS(c, data.channelId)
2693-
val resetData = data.modify(_.commitments.active).using(_.filter(_.fundingTxIndex <= resetFundingTxIndex))
2692+
val commitments1 = data.commitments.copy(active = data.commitments.active.filter(_.fundingTxIndex <= resetFundingTxIndex))
2693+
val resetData = data match {
2694+
case data: DATA_WAIT_FOR_FUNDING_CONFIRMED => data.copy(commitments = commitments1)
2695+
case data: DATA_WAIT_FOR_CHANNEL_READY => data.copy(commitments = commitments1)
2696+
case data: DATA_WAIT_FOR_DUAL_FUNDING_CONFIRMED => data.copy(commitments = commitments1)
2697+
case data: DATA_WAIT_FOR_DUAL_FUNDING_READY => data.copy(commitments = commitments1)
2698+
case data: DATA_NORMAL => data.copy(commitments = commitments1)
2699+
case data: DATA_SHUTDOWN => data.copy(commitments = commitments1)
2700+
case data: DATA_NEGOTIATING => data.copy(commitments = commitments1)
2701+
case data: DATA_NEGOTIATING_SIMPLE => data.copy(commitments = commitments1)
2702+
case data: DATA_CLOSING => data.copy(commitments = commitments1)
2703+
case data: DATA_WAIT_FOR_REMOTE_PUBLISH_FUTURE_COMMITMENT => data.copy(commitments = commitments1)
2704+
}
26942705
handleLocalError(failure, resetData, Some(c))
26952706
} else {
26962707
handleCommandError(CommandUnavailableInThisState(d.channelId, "forcecloseresetfundingindex", stateName), c)

0 commit comments

Comments
 (0)