diff options
author | bptato <nincsnevem662@gmail.com> | 2024-06-29 12:32:17 +0200 |
---|---|---|
committer | bptato <nincsnevem662@gmail.com> | 2024-06-29 12:50:16 +0200 |
commit | 2e50aa23237da76802d2a61cb7426bf51c122d14 (patch) | |
tree | 9ed3f42f9ef3f6a6f97c4118bc5fbc90248f00ce /src/server | |
parent | e7786e39e38ddf5ec75b95cc19e1bee108cd37d2 (diff) | |
download | chawan-2e50aa23237da76802d2a61cb7426bf51c122d14.tar.gz |
dom, pager: cache images from network
With many limitations: * slightly randomized expiry, so it's harder to fingerprint * only images. so e.g. CSS is still left uncached * it's per-buffer and non-persistent, so images are still redownloaded for every new page load so it's more of an image sharing between placements than true caching.
Diffstat (limited to 'src/server')
-rw-r--r-- | src/server/buffer.nim | 3 | ||||
-rw-r--r-- | src/server/forkserver.nim | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/src/server/buffer.nim b/src/server/buffer.nim index d84bc29c..af14634a 100644 --- a/src/server/buffer.nim +++ b/src/server/buffer.nim @@ -27,7 +27,6 @@ import html/enums import html/env import html/event import html/formdata as formdata_impl -import img/bitmap import io/bufreader import io/bufstream import io/bufwriter @@ -1699,7 +1698,7 @@ proc getLines*(buffer: Buffer; w: Slice[int]): GetLinesResult {.proxy.} = result.bgcolor = buffer.bgcolor if buffer.config.images: for image in buffer.images: - if image.y <= w.b and image.y + int(image.bmp.height) >= w.a: + if image.y <= w.b and image.y + image.height >= w.a: result.images.add(image) proc markURL*(buffer: Buffer; schemes: seq[string]) {.proxy.} = diff --git a/src/server/forkserver.nim b/src/server/forkserver.nim index de81bace..dfe3febb 100644 --- a/src/server/forkserver.nim +++ b/src/server/forkserver.nim @@ -4,6 +4,7 @@ import std/posix import std/selectors import std/tables +import chagashi/charset import config/config import html/formdata import io/bufreader @@ -22,8 +23,6 @@ import utils/proctitle import utils/sandbox import utils/strwidth -import chagashi/charset - type ForkCommand = enum fcForkBuffer, fcForkLoader, fcRemoveChild, fcLoadConfig |