mirror of
https://github.com/immich-app/immich
synced 2026-08-15 13:03:57 +00:00
CronetImageFetcher sized the response buffer from Content-Length, which is the compressed wire size. Cronet auto-decompresses gzip/br responses and writes decompressed bytes into the buffer, exceeding it and throwing IllegalArgumentException: ByteBuffer is already full on the next read. Use the growable path; Content-Length becomes an initial alloc hint only, capped at 128 MB so an untrusted server can't overflow Int.MAX_VALUE or OOM us upfront. Reuse Cronet's ByteBuffer between reads when no grow is needed. |
||
|---|---|---|
| .. | ||
| src | ||
| build.gradle | ||
| CMakeLists.txt | ||
| proguard-rules.pro | ||