Is there an existing issue for this?
- I have searched the existing issues
Current behaviour
The help text says:
0 replaceable(=N)
1 Set RBF opt-in sequence number for input N (if not provided, opt-in all
2 available inputs)
but when I don’t provide N, I get an error:
0$ bitcoin-tx -create in=0000000000000000000000000000000000000000000000000000000000000000:0 replaceable
1error: Invalid TX input index ''
Expected behaviour
I expect bitcoin-tx to act like its help string describes:
0$ bitcoin-tx -create in=0000000000000000000000000000000000000000000000000000000000000000:0 replaceable
1020000000100000000000000000000000000000000000000000000000000000000000000000000000000fdffffff0000000000
The fix is simple:
0diff --git a/src/bitcoin-tx.cpp b/src/bitcoin-tx.cpp
1index a05443a2e5..b9348fcad0 100644
2--- a/src/bitcoin-tx.cpp
3+++ b/src/bitcoin-tx.cpp
4@@ -222,7 +222,7 @@ static void MutateTxRBFOptIn(CMutableTransaction& tx, const std::string& strInId
5 {
6 // parse requested index
7 int64_t inIdx;
8- if (!ParseInt64(strInIdx, &inIdx) || inIdx < 0 || inIdx >= static_cast<int64_t>(tx.vin.size())) {
9+ if (strInIdx != "" && (!ParseInt64(strInIdx, &inIdx) || inIdx < 0 || inIdx >= static_cast<int64_t>(tx.vin.size()))) {
10 throw std::runtime_error("Invalid TX input index '" + strInIdx + "'");
11 }
12
Steps to reproduce
Run the command shown above.
Relevant log output
No response
How did you obtain Bitcoin Core
Compiled from source
What version of Bitcoin Core are you using?
master@e3eb3aae3
Operating system and version
Debian 12
Machine specifications
No response