From 3a69e3e58f52c51713502ee88d5299a55c1dca02 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 23 Nov 2025 09:49:49 +0530 Subject: [PATCH] Fix cache not being used for custom image preview rendered content without an image --- kittens/choose_files/image_preview.go | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/kittens/choose_files/image_preview.go b/kittens/choose_files/image_preview.go index a3fcdf09f..515cfb408 100644 --- a/kittens/choose_files/image_preview.go +++ b/kittens/choose_files/image_preview.go @@ -182,17 +182,21 @@ func (p *ImagePreview) start_rendering() { return } if len(ans) > 0 { - if d := ans[IMAGE_METADATA_KEY]; d != "" { - if b, err := os.ReadFile(d); err == nil { - var m images.SerializableImageMetadata - if err = json.Unmarshal(b, &m); err == nil { - if cm, err := p.renderer.Unmarshall(ans); err == nil { - p.render_channel <- render_data{cached_data: ans, metadata: metadata{image: &m, custom: cm}} - return + mi := metadata{} + if mi.custom, err = p.renderer.Unmarshall(ans); err == nil { + if d := ans[IMAGE_METADATA_KEY]; d != "" { + if b, err := os.ReadFile(d); err == nil { + var m images.SerializableImageMetadata + if err = json.Unmarshal(b, &m); err == nil { + mi.image = &m } } } } + if mi.custom != nil || mi.image != nil { + p.render_channel <- render_data{cached_data: ans, metadata: mi} + return + } } rdata, metadata, img, err := p.renderer.Render(p.abspath) if err != nil {