File tree Expand file tree Collapse file tree 1 file changed +13
-7
lines changed Expand file tree Collapse file tree 1 file changed +13
-7
lines changed Original file line number Diff line number Diff line change @@ -126,15 +126,21 @@ impl Lz4Encoder {
126
126
Lz4Fn :: Flush | Lz4Fn :: End => self . flush_buffer_size ,
127
127
} ;
128
128
129
- let ( dst_buffer, maybe_internal_buffer) = if min_dst_size > output. unwritten ( ) . len ( ) {
129
+ let output_len = output. unwritten ( ) . len ( ) ;
130
+
131
+ let ( dst_buffer, dst_size, maybe_internal_buffer) = if min_dst_size > output_len {
130
132
let buffer_size = self . block_buffer_size ;
131
133
let buffer = self
132
134
. maybe_buffer
133
135
. get_or_insert_with ( || PartialBuffer :: new ( Vec :: with_capacity ( buffer_size) ) ) ;
134
136
buffer. reset ( ) ;
135
- ( buffer. unwritten_mut ( ) . as_mut_ptr ( ) , Some ( buffer) )
137
+ (
138
+ buffer. unwritten_mut ( ) . as_mut_ptr ( ) ,
139
+ buffer_size,
140
+ Some ( buffer) ,
141
+ )
136
142
} else {
137
- ( output. unwritten_mut ( ) . as_mut_ptr ( ) , None )
143
+ ( output. unwritten_mut ( ) . as_mut_ptr ( ) , output_len , None )
138
144
} ;
139
145
140
146
let len = match lz4_fn {
@@ -143,7 +149,7 @@ impl Lz4Encoder {
143
149
LZ4F_compressBegin (
144
150
self . ctx . get_mut ( ) . ctx ,
145
151
dst_buffer,
146
- min_dst_size ,
152
+ dst_size ,
147
153
& self . preferences ,
148
154
)
149
155
} ) ?;
@@ -155,7 +161,7 @@ impl Lz4Encoder {
155
161
LZ4F_compressUpdate (
156
162
self . ctx . get_mut ( ) . ctx ,
157
163
dst_buffer,
158
- min_dst_size ,
164
+ dst_size ,
159
165
input. unwritten ( ) . as_ptr ( ) ,
160
166
src_size,
161
167
core:: ptr:: null ( ) ,
@@ -168,7 +174,7 @@ impl Lz4Encoder {
168
174
LZ4F_flush (
169
175
self . ctx . get_mut ( ) . ctx ,
170
176
dst_buffer,
171
- min_dst_size ,
177
+ dst_size ,
172
178
core:: ptr:: null ( ) ,
173
179
)
174
180
} ) ?,
@@ -177,7 +183,7 @@ impl Lz4Encoder {
177
183
LZ4F_compressEnd (
178
184
self . ctx . get_mut ( ) . ctx ,
179
185
dst_buffer,
180
- min_dst_size ,
186
+ dst_size ,
181
187
core:: ptr:: null ( ) ,
182
188
)
183
189
} ) ?;
You can’t perform that action at this time.
0 commit comments