diff options
author | Quentin Dufour <quentin@deuxfleurs.fr> | 2024-05-28 13:04:46 +0200 |
---|---|---|
committer | Quentin Dufour <quentin@deuxfleurs.fr> | 2024-05-28 13:04:46 +0200 |
commit | 410d663a5ecbb6ca46ac049227afdaaaf50ac27f (patch) | |
tree | c5ec222da00e2d6caf9a6c79b12cef3df59e5ef0 /aero-dav/src/decoder.rs | |
parent | 10dac17ce173e584fc857f717f645c05b7cd42ac (diff) | |
download | aerogramme-410d663a5ecbb6ca46ac049227afdaaaf50ac27f.tar.gz aerogramme-410d663a5ecbb6ca46ac049227afdaaaf50ac27f.zip |
add a multistatus extension entrypoint
Diffstat (limited to 'aero-dav/src/decoder.rs')
-rw-r--r-- | aero-dav/src/decoder.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/aero-dav/src/decoder.rs b/aero-dav/src/decoder.rs index bd724e8..bb64455 100644 --- a/aero-dav/src/decoder.rs +++ b/aero-dav/src/decoder.rs @@ -67,11 +67,13 @@ impl<E: Extension> QRead<Multistatus<E>> for Multistatus<E> { xml.open(DAV_URN, "multistatus").await?; let mut responses = Vec::new(); let mut responsedescription = None; + let mut extension = None; loop { let mut dirty = false; xml.maybe_push(&mut responses, &mut dirty).await?; xml.maybe_read(&mut responsedescription, &mut dirty).await?; + xml.maybe_read(&mut extension, &mut dirty).await?; if !dirty { match xml.peek() { Event::End(_) => break, @@ -84,6 +86,7 @@ impl<E: Extension> QRead<Multistatus<E>> for Multistatus<E> { Ok(Multistatus { responses, responsedescription, + extension, }) } } @@ -983,6 +986,7 @@ mod tests { }, ], responsedescription: None, + extension: None, } ); } @@ -1053,6 +1057,7 @@ mod tests { assert_eq!( got, Multistatus { + extension: None, responses: vec![ Response { status_or_propstat: StatusOrPropstat::PropStat( |