… | |
… | |
199 | |
199 | |
200 | if (facedata *d = face_data (ix.idx, faceset)) |
200 | if (facedata *d = face_data (ix.idx, faceset)) |
201 | { |
201 | { |
202 | if (fxix) |
202 | if (fxix) |
203 | { |
203 | { |
204 | // 9 bytes is enough for fx_FFFOOO, 40 leaves some room for image data |
204 | // 9 bytes is enough for fx_FFFOOO, 240 leaves some room for image data |
205 | int chunk = min (min (avail - 40, MAXSOCKBUF - 9), ix.ofs); |
205 | int chunk = min (min (avail - 240, MAXSOCKBUF - 9), ix.ofs); |
206 | |
206 | |
207 | if (chunk <= 0) |
207 | if (chunk <= 0) |
208 | break; |
208 | break; |
209 | |
209 | |
210 | ix.ofs -= chunk; |
210 | ix.ofs -= chunk; |
… | |
… | |
224 | } |
224 | } |
225 | } |
225 | } |
226 | else |
226 | else |
227 | ix.ofs = 0; |
227 | ix.ofs = 0; |
228 | |
228 | |
229 | int consumed = ol - outputbuffer_len (); |
229 | int consumed = outputbuffer_len () - ol; |
230 | |
230 | |
231 | avail -= consumed; |
231 | avail -= consumed; |
232 | rate_avail -= consumed; |
232 | rate_avail -= consumed; |
233 | |
233 | |
234 | ol = outputbuffer_len (); |
234 | ol = outputbuffer_len (); |
235 | |
235 | |
236 | if (!ix.ofs) |
236 | if (!ix.ofs) |
237 | { |
237 | { |
238 | ixface.pop_back (); |
238 | ixface.pop_back (); |
|
|
239 | |
239 | if (ixface.empty ()) |
240 | if (ixface.empty ()) |
240 | break; |
241 | break; |
241 | } |
242 | } |
242 | } |
243 | } |
243 | } |
244 | } |