summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2010-08-05 14:31:00 +0000
committerThomas Martitz <kugel@rockbox.org>2010-08-05 14:31:00 +0000
commit458b55dac69f63c434fcc78ba3c344afbbad1abb (patch)
tree599c8636250dc7ccbac08c8a630b9752678283e8
parentf3a6d2476ace189048f1e5e91fd065dd5747c909 (diff)
downloadrockbox-458b55dac69f63c434fcc78ba3c344afbbad1abb.zip
rockbox-458b55dac69f63c434fcc78ba3c344afbbad1abb.tar.gz
rockbox-458b55dac69f63c434fcc78ba3c344afbbad1abb.tar.bz2
rockbox-458b55dac69f63c434fcc78ba3c344afbbad1abb.tar.xz
One more get_user_file_path() fix. Don't store the user dir in config.cfg and
pretent the file (fonts, wps, etc.)was in the installation dir (it'll still be loaded from the user dir). This way the behavior is the same for files in the installation dir and in the user config dir. This is needed because we historically only store the basename of the file at runtime and don't support writing these to config.cfg if they're outside of the rockbox dir. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27720 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/settings.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/apps/settings.c b/apps/settings.c
index 5a61e6d..3a851df 100644
--- a/apps/settings.c
+++ b/apps/settings.c
@@ -342,11 +342,8 @@ bool settings_load_config(const char* file, bool apply)
char storage[MAX_PATH];
if (settings[i].filename_setting->prefix)
{
- char prefix_dir[MAX_PATH];
- const char *dir = get_user_file_path(
- settings[i].filename_setting->prefix,
- 0, prefix_dir, sizeof(prefix_dir));
- int len = strlen(dir);
+ const char *dir = settings[i].filename_setting->prefix;
+ size_t len = strlen(dir);
if (!strncasecmp(value, dir, len))
{
strlcpy(storage, &value[len], MAX_PATH);
@@ -480,10 +477,6 @@ bool cfg_to_string(int i/*setting_id*/, char* buf, int buf_len)
if (((char*)settings[i].setting)[0]
&& settings[i].filename_setting->prefix)
{
- char path[MAX_PATH];
- const char *prefix = get_user_file_path(
- settings[i].filename_setting->prefix, 0,
- path, sizeof(path));
if (((char*)settings[i].setting)[0] == '-')
{
buf[0] = '-';
@@ -491,7 +484,8 @@ bool cfg_to_string(int i/*setting_id*/, char* buf, int buf_len)
}
else
{
- snprintf(buf,buf_len,"%s%s%s", prefix,
+ snprintf(buf,buf_len,"%s%s%s",
+ settings[i].filename_setting->prefix,
(char*)settings[i].setting,
settings[i].filename_setting->suffix);
}