aboutsummaryrefslogtreecommitdiffstats
path: root/cfg.c
diff options
context:
space:
mode:
authorreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2006-01-30 12:53:08 +0000
committerreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2006-01-30 12:53:08 +0000
commitde2e1d3b697cf0f13b06a840290b42798ed477b5 (patch)
treed3ed9a1d8913ef77a2864d079e13ff775b5fe3fe /cfg.c
parent01263a551ad81fee5ef4a33badc2c529ac5f4060 (diff)
downloadlcd4linux-de2e1d3b697cf0f13b06a840290b42798ed477b5.tar.gz
[lcd4linux @ 2006-01-30 12:53:07 by reinelt]
replaced strncpy with strcpy where possible git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@631 3ae390bd-cb1e-0410-b409-cd5a39f66f1f
Diffstat (limited to 'cfg.c')
-rw-r--r--cfg.c24
1 files changed, 19 insertions, 5 deletions
diff --git a/cfg.c b/cfg.c
index 66dbd98..f0e483a 100644
--- a/cfg.c
+++ b/cfg.c
@@ -1,4 +1,4 @@
-/* $Id: cfg.c,v 1.47 2005/05/08 04:32:43 reinelt Exp $^
+/* $Id: cfg.c,v 1.48 2006/01/30 12:53:07 reinelt Exp $^
*
* config file stuff
*
@@ -23,6 +23,9 @@
*
*
* $Log: cfg.c,v $
+ * Revision 1.48 2006/01/30 12:53:07 reinelt
+ * replaced strncpy with strcpy where possible
+ *
* Revision 1.47 2005/05/08 04:32:43 reinelt
* CodingStyle added and applied
*
@@ -334,6 +337,7 @@ static char *strip(char *s, const int strip_comments)
while (isblank(*s))
s++;
+
for (p = s; *p; p++) {
if (*p == '"')
do
@@ -348,8 +352,10 @@ static char *strip(char *s, const int strip_comments)
break;
}
}
+
for (p--; p > s && isblank(*p); p--)
*p = '\0';
+
return s;
}
@@ -452,9 +458,9 @@ static void cfg_add(const char *section, const char *key, const char *val, const
int cfg_cmd(const char *arg)
{
char *key, *val;
- char buffer[256];
+ char *buffer;
- strncpy(buffer, arg, sizeof(buffer));
+ buffer = strdup (arg);
key = strip(buffer, 0);
for (val = key; *val; val++) {
if (*val == '=') {
@@ -462,11 +468,19 @@ int cfg_cmd(const char *arg)
break;
}
}
- if (*key == '\0' || *val == '\0')
+ if (*key == '\0' || *val == '\0') {
+ free (buffer);
return -1;
- if (!validchars(key))
+ }
+
+ if (!validchars(key)) {
+ free (buffer);
return -1;
+ }
+
cfg_add("", key, val, 1);
+
+ free (buffer);
return 0;
}