Introduction
Introduction Statistics Contact Development Disclaimer Help
load slide image on-demand - sent - simple plaintext presentation tool
git clone git://git.suckless.org/sent
Log
Files
Refs
README
LICENSE
---
commit 44a50ad94828d6375ebba9560109d06e9a163e5d
parent 27a904c1dd40d185dd5123ca354f6080e853ec92
Author: Hiltjo Posthuma <[email protected]>
Date: Sat, 4 Jun 2016 16:33:15 +0200
load slide image on-demand
previously an image file would be opened but only ffread when advancing to
the slide, but when the slide was not used it gave an error:
/usr/local/bin/2ff: failed to convert image/png
this changes it to load the image on-demand once and "cache" it.
Diffstat:
M sent.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
---
diff --git a/sent.c b/sent.c
@@ -55,6 +55,7 @@ typedef struct {
unsigned int linecount;
char **lines;
Image *img;
+ char *embed;
} Slide;
/* Purely graphic info */
@@ -436,7 +437,7 @@ load(FILE *fp)
/* only make image slide if first line of a slide star…
if (s->linecount == 0 && s->lines[0][0] == '@') {
memmove(s->lines[0], &s->lines[0][1], blen);
- s->img = ffopen(s->lines[0]);
+ s->embed = s->lines[0];
}
if (s->lines[s->linecount][0] == '\\')
@@ -447,6 +448,9 @@ load(FILE *fp)
if (!p)
break;
}
+
+ if (slidecount && slides[0].embed && slides[0].embed[0])
+ slides[0].img = ffopen(slides[0].embed);
}
void
@@ -458,6 +462,8 @@ advance(const Arg *arg)
if (slides[idx].img)
slides[idx].img->state &= ~(DRAWN | SCALED);
idx = new_idx;
+ if (!slides[idx].img && slides[idx].embed && slides[idx].embed…
+ slides[idx].img = ffopen(slides[idx].embed);
xdraw();
if (slidecount > idx + 1 && slides[idx + 1].img)
ffread(slides[idx + 1].img);
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.