diff options
| author | Peter D'Hoye <peter.dhoye@gmail.com> | 2006-04-25 00:14:21 +0000 |
|---|---|---|
| committer | Peter D'Hoye <peter.dhoye@gmail.com> | 2006-04-25 00:14:21 +0000 |
| commit | ab90b1d55e7d267591cef2ed4828494e7e62d630 (patch) | |
| tree | 09f1629cb868f589d1b018be0209387e1208a8ea /apps/settings.c | |
| parent | 45406014d76ad4e630b47d3a3cca5e3639265424 (diff) | |
| download | rockbox-ab90b1d55e7d267591cef2ed4828494e7e62d630.zip rockbox-ab90b1d55e7d267591cef2ed4828494e7e62d630.tar.gz rockbox-ab90b1d55e7d267591cef2ed4828494e7e62d630.tar.bz2 rockbox-ab90b1d55e7d267591cef2ed4828494e7e62d630.tar.xz | |
Added bad filename protection when user enters an fm radio preset filename. Fixes bugreport 5137.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9795 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/settings.c')
| -rw-r--r-- | apps/settings.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/apps/settings.c b/apps/settings.c index 2eeb6a9..5929da4 100644 --- a/apps/settings.c +++ b/apps/settings.c @@ -1316,10 +1316,11 @@ void set_file(char* filename, char* setting, int maxlen) len = strlen(fptr); ptr = fptr + len; - while (*ptr != '.') { + while ((*ptr != '.') && (ptr != fptr)) { extlen++; ptr--; } + if(ptr == fptr) extlen = 0; if (strncasecmp(ROCKBOX_DIR, filename ,strlen(ROCKBOX_DIR)) || (len-extlen > maxlen)) |