File tree 1 file changed +5
-7
lines changed
1 file changed +5
-7
lines changed Original file line number Diff line number Diff line change @@ -55,25 +55,23 @@ pub(crate) struct ConduitRequest {
55
55
path : String ,
56
56
remote_addr : SocketAddr ,
57
57
body : Cursor < Bytes > ,
58
- extensions : Extensions , // makes struct non-Send
59
58
}
60
59
61
60
impl ConduitRequest {
62
61
pub ( crate ) fn new ( info : & mut RequestInfo , remote_addr : SocketAddr , now : StartInstant ) -> Self {
63
- let ( parts, body) = info. take ( ) ;
62
+ let ( mut parts, body) = info. take ( ) ;
64
63
let path = parts. 0 . uri . path ( ) . as_bytes ( ) ;
65
64
let path = percent_encoding:: percent_decode ( path)
66
65
. decode_utf8_lossy ( )
67
66
. into_owned ( ) ;
68
- let mut extensions = Extensions :: new ( ) ;
69
- extensions. insert ( now) ;
67
+
68
+ parts . 0 . extensions . insert ( now) ;
70
69
71
70
Self {
72
71
parts,
73
72
path,
74
73
remote_addr,
75
74
body : Cursor :: new ( body) ,
76
- extensions,
77
75
}
78
76
}
79
77
@@ -123,11 +121,11 @@ impl RequestExt for ConduitRequest {
123
121
}
124
122
125
123
fn extensions ( & self ) -> & Extensions {
126
- & self . extensions
124
+ & self . parts . 0 . extensions
127
125
}
128
126
129
127
fn mut_extensions ( & mut self ) -> & mut Extensions {
130
- & mut self . extensions
128
+ & mut self . parts . 0 . extensions
131
129
}
132
130
133
131
/// Returns the value of the `Host` header
You can’t perform that action at this time.
0 commit comments