Fix: Handle # value in the account name
This commit is contained in:
parent
1b85674357
commit
ab6867e3b0
|
@ -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) {
|
||||
|
|
Loading…
Reference in a new issue