From 206fa32e55ebe2fa88abe91c8646d4880822b733 Mon Sep 17 00:00:00 2001
From: Darius Auding <Darius.auding@gmx.de>
Date: Mon, 12 Jun 2023 20:57:22 +0200
Subject: [PATCH] finishing the `get_post_data()` function for binary
 Applicacation-x-www-urlencoded forms

---
 core/http/src/handling/request.rs | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/core/http/src/handling/request.rs b/core/http/src/handling/request.rs
index a74685f..5267de1 100644
--- a/core/http/src/handling/request.rs
+++ b/core/http/src/handling/request.rs
@@ -145,7 +145,10 @@ impl Request<'_> {
         match post_type {
             Mime::ApplicationXWwwFormUrlencoded => {
                 for kvp in data.split(|byte| *byte == b'&') {
-                    let kvp = kvp.split(|byte| *byte == b'=').collect::<Vec<&[u8]>>();
+                    let kvp = kvp
+                        .split(|byte| *byte == b'=')
+                        .map(|list| list.to_vec())
+                        .collect::<Vec<Vec<u8>>>();
                     let key = if let Some(kv) = kvp.get(0) {
                         kv
                     } else {
@@ -331,7 +334,7 @@ mod test {
             method: crate::handling::methods::Method::Post,
         };
         let data = Data {
-            buffer: b"message=23&message1=24".to_vec(),
+            buffer: b"message=24&message1=23".to_vec(),
             is_complete: true,
         };
         assert_eq!(
-- 
GitLab