ich hab mir mal deinen Code angesehen
und ich meine du hast einen sehr großen Fehler in der Datei config.cpp
[...]
char config_path[40];
void set_path() {
if ( strlen (config_path) < 1) {
strncpy ( config_path, getenv("HOME"), strlen(getenv("HOME")));
strncat( config_path, "/.bambus.conf", 27);
}
}
[...]
Das 1. Argument von strncpy ist SRC, danach DEST und schließlich SIZE.
SIZE gibt die maximale Anzahl an Zeichen an, die in SRC geschrieben werden dürfen.
Dein Fehler ist nun das du SRC(config_path) mit 40 zeichen festlegst, das heisst du darfst auch nur maximal 40 zeichen benutzen.
Was passiert wenn das Home Verzeichnis mehr als 40 zeichen hat? 😉