diff -up bltk-1.0.9/tools/bltk/parseconf.c.conf_home bltk-1.0.9/tools/bltk/parseconf.c
--- bltk-1.0.9/tools/bltk/parseconf.c.conf_home 2009-07-31 10:11:51.812041537 +0200
+++ bltk-1.0.9/tools/bltk/parseconf.c 2009-07-31 10:14:00.747294693 +0200
@@ -47,7 +47,8 @@
#include "bltk.h"
-#define BLTK_CONF "/etc/bltk.conf"
+#define BLTK_CONF "bltk.conf"
+#define BLTK_HOME ".bltk"
typedef struct para_item_str_t
{
@@ -221,12 +222,24 @@ void
param_load_conf()
{
char str[STR_LEN];
+ char conf_file[STR_LEN];
char name[STR_LEN], val[STR_LEN];
int index, len;
FILE *f;
- if ((f = fopen(BLTK_CONF, "rt")) != NULL)
+
+ sprintf(conf_file, "%s/%s/%s", getenv("HOME"), BLTK_HOME, BLTK_CONF);
+ if ((f = fopen(conf_file, "rt")) == NULL)
{
+ sprintf(conf_file, "/etc/%s", BLTK_CONF);
+ f = fopen(conf_file, "rt");
+ }
+
+ if (f != NULL)
+ {
+ sprintf(str, "BLTK_CONF=%s", conf_file);
+ putenv(strdup(str));
+
while (fgets(str, STR_LEN, f) != NULL)
{
if ((len = strlen(str)) > 0 && str[len-1] == '\n')
@@ -264,7 +277,7 @@ param_load_defaults()
if (bltk_home == NULL)
{
- sprintf(str, "%s/.bltk", getenv("HOME"));
+ sprintf(str, "%s/%s", getenv("HOME"), BLTK_HOME);
bltk_home = strdup(str);
} else if (bltk_home[0] == '~') {
sprintf(str, "%s%s", getenv("HOME"), bltk_home+1);