Z
Zico
Lebende Foren Legende
Hallo Leute
Wieder mal melde ich mich wegen etwas wohl ganz triviales.
Mein Programm entwickelt sich nun etwas weiter und ich möchte es nun so haben, dass ebenfalls ein config-directory in HOME erstellt wird. Das klappt soweit ganz gut, auch alle config Dateien werden dorthin abgelegt.
Das Problem ist nun, dass das Programm nun AUSSCHLIESSLICH aus diesem Verzeichnis liest. Es soll aber jedoch weiterhin auch aus dem "jetzigen" - sprich aktuellen Verzeichnis sowie dem aus der Definition von DATA_PATH lesen.
Das ganze Programm ist schon sehr groß, daher hier der Code, der das Erstellen bzw wechseln in dies home-config Verzeichnis betrifft.
Klar, bevor ich diese Zeilen eingefügt habe wurde das Verzeichnis ja nicht geweselt und so immer aus dem aktuellen gelesen. Doch wie bringe ich das aktuelle und DATA_PATH auch hinein? Geht das direkt hier oder muss ich mir da was anderes ausdenken?
Gruß
Christian
Wieder mal melde ich mich wegen etwas wohl ganz triviales.
Mein Programm entwickelt sich nun etwas weiter und ich möchte es nun so haben, dass ebenfalls ein config-directory in HOME erstellt wird. Das klappt soweit ganz gut, auch alle config Dateien werden dorthin abgelegt.
Das Problem ist nun, dass das Programm nun AUSSCHLIESSLICH aus diesem Verzeichnis liest. Es soll aber jedoch weiterhin auch aus dem "jetzigen" - sprich aktuellen Verzeichnis sowie dem aus der Definition von DATA_PATH lesen.
Das ganze Programm ist schon sehr groß, daher hier der Code, der das Erstellen bzw wechseln in dies home-config Verzeichnis betrifft.
Code:
char *home = getenv("HOME");
if ((t = FindArg("-userdir")))
chdir(Args[t+1]);
else if (home) {
char buf[PATH_MAX + 5];
strcpy(buf, home);
strcat(buf, "/.program-config_example");
if (chdir(buf)) {
mkdir(buf, 0755);
if (chdir(buf))
fprintf(stderr, "Cannot change to $HOME/.program-config_example\n");
}
}
Klar, bevor ich diese Zeilen eingefügt habe wurde das Verzeichnis ja nicht geweselt und so immer aus dem aktuellen gelesen. Doch wie bringe ich das aktuelle und DATA_PATH auch hinein? Geht das direkt hier oder muss ich mir da was anderes ausdenken?
Gruß
Christian