aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarry Jeffery <harry@exec64.co.uk>2017-11-29 20:32:04 +0000
committerHarry Jeffery <harry@exec64.co.uk>2017-11-29 20:32:04 +0000
commit957a3efd3ea2d7b087f0b70f8cd4b733dfa4d29d (patch)
treedc81f9056422cd869d4dbc3134a65461bd89936b
parente2d87223f4f8eabbce18e437ffee396c94501c4c (diff)
downloadimv-957a3efd3ea2d7b087f0b70f8cd4b733dfa4d29d.tar.gz
Factor out setting of environment variables
-rw-r--r--src/imv.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/imv.c b/src/imv.c
index df19297..904678b 100644
--- a/src/imv.c
+++ b/src/imv.c
@@ -107,6 +107,7 @@ void command_set_slideshow_duration(struct list *args, const char *argstr, void
static bool setup_window(struct imv *imv);
static void handle_event(struct imv *imv, SDL_Event *event);
static void render_window(struct imv *imv);
+static void update_env_vars(struct imv *imv);
static size_t generate_title_text(struct imv *imv, char *buf, size_t len);
static size_t generate_overlay_text(struct imv *imv, char *buf, size_t len);
@@ -1085,7 +1086,7 @@ void command_exec(struct list *args, const char *argstr, void *data)
{
(void)args;
struct imv *imv = data;
- setenv("imv_current_file", imv_navigator_selection(imv->navigator), 1);
+ update_env_vars(imv);
system(argstr);
}
@@ -1170,6 +1171,11 @@ void command_set_slideshow_duration(struct list *args, const char *argstr, void
}
}
+static void update_env_vars(struct imv *imv)
+{
+ setenv("imv_current_file", imv_navigator_selection(imv->navigator), 1);
+}
+
static size_t generate_title_text(struct imv *imv, char *buf, size_t buf_len)
{
const char *current_path = imv_navigator_selection(imv->navigator);