Fix: Handle # value in the account name

This commit is contained in:
Neeraj Gupta 2023-07-13 20:32:57 +05:30
parent 1b85674357
commit ab6867e3b0

View file

@ -90,6 +90,7 @@ class Code {
static Code fromRawData(String rawData) {
Uri uri = Uri.parse(rawData);
try {
return Code(
_getAccount(uri),
_getIssuer(uri),
@ -100,6 +101,15 @@ class Code {
_getType(uri),
rawData,
);
} catch(e) {
// if account name contains # without encoding,
// rest of the url are treated as url fragment
if(rawData.contains("#")) {
return Code.fromRawData(rawData.replaceAll("#", '%23'));
} else {
rethrow;
}
}
}
static String _getAccount(Uri uri) {