diff options
author | Solomon Peachy <pizza@shaftnet.org> | 2020-08-09 09:41:51 -0400 |
---|---|---|
committer | Solomon Peachy <pizza@shaftnet.org> | 2020-08-09 10:27:32 -0400 |
commit | 0d4752e3f6b7558ce260fff04c70af643d222172 (patch) | |
tree | 7e3aa32f41188a0b5519e86d725ed55ee9ab86d0 | |
parent | 08c4b708ae52dc6bb5848b72a897e7790da5dd9e (diff) | |
download | rockbox-0d4752e.tar.gz rockbox-0d4752e.zip |
plugins: Make 'struct configdata' argument to the configfile helper const
So plugins can use const structures, possibly saving a little bit of RAM.
Change-Id: I15b0ef20e7554caf5f6d1c12f6ab109ddf3c0dbd
-rw-r--r-- | apps/plugins/lib/configfile.c | 20 | ||||
-rw-r--r-- | apps/plugins/lib/configfile.h | 4 |
2 files changed, 12 insertions, 12 deletions
diff --git a/apps/plugins/lib/configfile.c b/apps/plugins/lib/configfile.c index ab1e21ad4a..2ab8f77e26 100644 --- a/apps/plugins/lib/configfile.c +++ b/apps/plugins/lib/configfile.c @@ -42,7 +42,7 @@ static void get_cfg_filename(char* buf, int buf_len, const char* filename) #endif } -int configfile_save(const char *filename, struct configdata *cfg, +int configfile_save(const char *filename, const struct configdata *cfg, int num_items, int version) { int fd; @@ -56,7 +56,7 @@ int configfile_save(const char *filename, struct configdata *cfg, /* pre-allocate 10 bytes for INT */ rb->fdprintf(fd, "file version: %10d\n", version); - + for(i = 0;i < num_items;i++) { switch(cfg[i].type) { case TYPE_INT: @@ -91,7 +91,7 @@ int configfile_save(const char *filename, struct configdata *cfg, return 0; } -int configfile_load(const char *filename, struct configdata *cfg, +int configfile_load(const char *filename, const struct configdata *cfg, int num_items, int min_version) { int fd; @@ -118,7 +118,7 @@ int configfile_load(const char *filename, struct configdata *cfg, return -1; } } - + for(i = 0;i < num_items;i++) { if(!rb->strcmp(cfg[i].name, name)) { switch(cfg[i].type) { @@ -149,7 +149,7 @@ int configfile_load(const char *filename, struct configdata *cfg, } } } - + rb->close(fd); return 0; } @@ -190,13 +190,13 @@ int configfile_update_entry(const char* filename, const char* name, int val) int found = 0; int line_len = 0; int pos = 0; - + /* open the current config file */ get_cfg_filename(path, MAX_PATH, filename); fd = rb->open(path, O_RDWR); if(fd < 0) return -1; - + /* read in the current stored settings */ while((line_len = rb->read_line(fd, buf, 256)) > 0) { @@ -211,13 +211,13 @@ int configfile_update_entry(const char* filename, const char* name, int val) } pos += line_len; } - + /* if (name/val) is a new entry just append to file */ if (found == 0) /* pre-allocate 10 bytes for INT */ rb->fdprintf(fd, "%s: %10d\n", name, val); - + rb->close(fd); - + return found; } diff --git a/apps/plugins/lib/configfile.h b/apps/plugins/lib/configfile.h index 4a980b4e67..69869142e2 100644 --- a/apps/plugins/lib/configfile.h +++ b/apps/plugins/lib/configfile.h @@ -45,10 +45,10 @@ struct configdata /* configfile_save - Given configdata entries this function will create a config file with these entries, destroying any previous config file of the same name */ -int configfile_save(const char *filename, struct configdata *cfg, +int configfile_save(const char *filename, const struct configdata *cfg, int num_items, int version); -int configfile_load(const char *filename, struct configdata *cfg, +int configfile_load(const char *filename, const struct configdata *cfg, int num_items, int min_version); /* configfile_get_value - Given a key name, this function will |