Strip quotes from X-Matrix fields

This commit is contained in:
Jonas Platte 2022-02-09 14:01:44 +01:00
parent 21ae63d46b
commit 5d8c80b170
No known key found for this signature in database
GPG key ID: 7D261D771D915378

View file

@ -315,6 +315,13 @@ impl Credentials for XMatrix {
for entry in parameters.split_terminator(',') { for entry in parameters.split_terminator(',') {
let (name, value) = entry.split_once('=')?; let (name, value) = entry.split_once('=')?;
// It's not at all clear why some fields are quoted and others not in the spec,
// let's simply accept either form for every field.
let value = value
.strip_prefix('"')
.and_then(|rest| rest.strip_suffix('"'))
.unwrap_or(value);
// FIXME: Catch multiple fields of the same name // FIXME: Catch multiple fields of the same name
match name { match name {
"origin" => origin = Some(value.try_into().ok()?), "origin" => origin = Some(value.try_into().ok()?),