mirror of
https://seed.radicle.dev/rad:z4D5UCArafTzTQpDZNQRuqswh3ury.git
synced 2026-11-15 16:10:38 +08:00
Treat RIDs with non-base58 characters as invalid
parseRepositoryId threw instead of returning undefined, so the seed form crashed on a typo instead of saying the RID is invalid.
This commit is contained in:
+6
-1
@@ -47,7 +47,12 @@ export function parseRepositoryId(
|
||||
): { prefix: string; pubkey: string } | undefined {
|
||||
const match = /^(rad:)?(z[a-zA-Z0-9]+)$/.exec(rid);
|
||||
if (match) {
|
||||
const hex = bs58.decode(match[2].substring(1));
|
||||
let hex: Uint8Array;
|
||||
try {
|
||||
hex = bs58.decode(match[2].substring(1));
|
||||
} catch {
|
||||
return undefined;
|
||||
}
|
||||
if (hex.byteLength !== 20) {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user