From 762b7d670848aa0c5ae3e31910c4b0d62ad9413b Mon Sep 17 00:00:00 2001 From: Stefan Ritt Date: Tue, 21 Oct 2014 13:41:44 +0200 Subject: [PATCH] Serve attachments correctly --- src/elogd.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/elogd.c b/src/elogd.c index a8b5cc90..8208b079 100755 --- a/src/elogd.c +++ b/src/elogd.c @@ -4683,10 +4683,8 @@ int el_retrieve_attachment(LOGBOOK * lbs, int message_id, int n, char name[MAX_P break; } - if (p) { - strlcpy(name, lbs->el_index[index].subdir, MAX_PATH_LENGTH); - strlcat(name, p, MAX_PATH_LENGTH); - } + if (p) + strlcpy(name, p, MAX_PATH_LENGTH); return EL_SUCCESS; } @@ -26620,7 +26618,7 @@ void interprete(char *lbook, char *path) edit_id[80], file_name[256], command[256], enc_path[256], dec_path[256], uname[80], full_name[256], user_email[256], logbook[256], logbook_enc[256], *experiment, group[256], css[256], *pfile, attachment[MAX_PATH_LENGTH], str3[NAME_LENGTH], - thumb_name[256], sid[32], error_str[256]; + thumb_name[256], sid[32], error_str[256], subdir[256]; LOGBOOK *lbs; FILE *f; @@ -27188,6 +27186,8 @@ void interprete(char *lbook, char *path) pfile[13] = '_'; /* file from data directory requested */ strlcpy(file_name, lbs->data_dir, sizeof(file_name)); + generate_subdir_name(pfile, subdir, sizeof(subdir)); + strlcat(file_name, subdir, sizeof(file_name)); strlcat(file_name, pfile, sizeof(file_name)); } else { /* file from theme directory requested */