From 0196790734e6562548b2f721908c53be215dd5a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Damian=20Go=C5=82da?= Date: Mon, 12 Jan 2015 08:22:17 +0100 Subject: [PATCH] Issue 1625 - Option for Windows-compatible filenames - trim trailing spaces and dots, fixes #1625 --- src/dvr/dvr_rec.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/dvr/dvr_rec.c b/src/dvr/dvr_rec.c index e7c8a73e..7101f2a0 100644 --- a/src/dvr/dvr_rec.c +++ b/src/dvr/dvr_rec.c @@ -134,7 +134,7 @@ dvr_rec_unsubscribe(dvr_entry_t *de, int stopcode) static char * cleanup_filename(char *s, dvr_config_t *cfg) { - int i, len = strlen(s); + int i, len = strlen(s), len2; char *s1; s1 = intlconv_utf8safestr(cfg->dvr_charset_id, s, len * 2); @@ -151,7 +151,7 @@ cleanup_filename(char *s, dvr_config_t *cfg) if (s[0] == '.') s[0] = '_'; - int len2 = strlen(s); + len2 = strlen(s); for (i = 0; i < len2; i++) { if(s[i] == '/') @@ -171,14 +171,11 @@ cleanup_filename(char *s, dvr_config_t *cfg) } if(cfg->dvr_windows_compatible_filenames) { - //trim trailing spaces and dots + // trim trailing spaces and dots for (i = len2 - 1; i >= 0; i--) { - if((s[i] == ' ') || (s[i] == '.')) { - s[i] = '\0'; - } - else { - break; - } + if((s[i] != ' ') && (s[i] != '.')) + break; + s[i] = '\0'; } }