Fix deriveXAddress null behavior (#1964)

* Fix deriveXAddress null behavior

* Also check for undefined

* Simplify theTag

* Add test case for undefined
This commit is contained in:
Jackson Mills
2022-04-21 14:36:10 -07:00
committed by GitHub
parent de0ce1b60f
commit 417978e131
3 changed files with 32 additions and 2 deletions

View File

@@ -1,5 +1,8 @@
# ripple-address-codec
## Unreleased
- Fixed `encodeXAddress` to handle `null` equivalently to `false`.
## 4.2.1 (2021-12-1)
- Fix issue where npm < 7 could not install the library
- Initial pass at linting this codebase with new rules

View File

@@ -43,8 +43,9 @@ function encodeXAddress(
if (tag > MAX_32_BIT_UNSIGNED_INT) {
throw new Error('Invalid tag')
}
const theTag = tag === false ? 0 : tag
const flag = tag === false ? 0 : 1
const theTag = tag || 0
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- Passing null is a common js mistake
const flag = tag === false || tag == null ? 0 : 1
/* eslint-disable no-bitwise ---
* need to use bitwise operations here */
const bytes = Buffer.concat([