aboutsummaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
authorgrunfink <grunfink@noreply.codeberg.org>2026-01-12 14:27:05 +0100
committergrunfink <grunfink@noreply.codeberg.org>2026-01-12 14:27:05 +0100
commit3ffdf91a4c6e90b0738a767d75b80941500713e0 (patch)
treec716b2fc1121c97a4ee82f3993d97ed41e63a7ad /data.c
parent9a5f67bd30511291f7ac9a13a56fb5611b4350cf (diff)
parent03d270a56b751bc53b83381d9fef21da8d4cbb91 (diff)
Merge pull request 'Implement metadata stripping for uploaded photos and videos' (#515) from draga79/snac2:master into master
Reviewed-on: https://codeberg.org/grunfink/snac2/pulls/515
Diffstat (limited to 'data.c')
-rw-r--r--data.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/data.c b/data.c
index 22ea7b0..f32dc81 100644
--- a/data.c
+++ b/data.c
@@ -89,8 +89,15 @@ int srv_open(const char *basedir, int auto_upgrade)
else {
if (xs_number_get(xs_dict_get(srv_config, "layout")) < disk_layout)
error = xs_fmt("ERROR: disk layout changed - execute 'snac upgrade' first");
- else
- ret = 1;
+ else {
+ if (!check_strip_tool()) {
+ const char *mp = xs_dict_get(srv_config, "mogrify_path");
+ if (mp == NULL) mp = "mogrify";
+ error = xs_fmt("ERROR: strip_exif enabled but '%s' not found or not working (set 'mogrify_path' in server.json)", mp);
+ }
+ else
+ ret = 1;
+ }
}
}
@@ -2710,6 +2717,8 @@ void static_put(snac *snac, const char *id, const char *data, int size)
if (fn && (f = fopen(fn, "wb")) != NULL) {
fwrite(data, size, 1, f);
fclose(f);
+
+ strip_media(fn);
}
}