summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorScott Moynes <smoynes@nexus.carleton.ca>2002-04-13 02:09:37 +0000
committerScott Moynes <smoynes@nexus.carleton.ca>2002-04-13 02:09:37 +0000
commita619b3d1c80b24ac54910ba3b27e71fa1ffd0de2 (patch)
tree4080427443343765869bc0fecb5648351f0bb1cb /src
parent456cf2d5065b6939516194c896ccc6f443c08a8c (diff)
added symlinking. needs a little work.
Diffstat (limited to 'src')
-rw-r--r--src/openbox.cc13
-rw-r--r--src/openbox.h1
2 files changed, 14 insertions, 0 deletions
diff --git a/src/openbox.cc b/src/openbox.cc
index 55c07acd..a9e8e5af 100644
--- a/src/openbox.cc
+++ b/src/openbox.cc
@@ -174,6 +174,7 @@ Openbox::Openbox(int m_argc, char **m_argv, char *dpy_name, char *rc)
} else {
rc_file = bstrdup(rc);
}
+ symlink_rc(rc_file);
config.setFile(rc_file);
no_focus = False;
@@ -1638,3 +1639,15 @@ void Openbox::setFocusedWindow(OpenboxWindow *win) {
if (old_screen && old_screen != screen)
old_screen->updateNetizenWindowFocus();
}
+
+#warning TODO: wrap in appropriate #ifdefs.
+
+void Openbox::symlink_rc(const char*rcfile)const{
+ char *homedir = getenv("HOME");
+
+ char *link_file = new char[strlen(homedir) + strlen("/.blackoxrc") + 1];
+ sprintf(link_file, "%s/.blackboxrc", homedir);
+ if(symlink(rcfile, link_file) == -1){
+ perror("Cannot create symlink");
+ }
+}
diff --git a/src/openbox.h b/src/openbox.h
index 3e3d1ef2..c51ffad7 100644
--- a/src/openbox.h
+++ b/src/openbox.h
@@ -122,6 +122,7 @@ protected:
void load_rc(void);
void save_rc(void);
void reload_rc(void);
+ void symlink_rc(const char *) const;
void real_rereadMenu(void);
void real_reconfigure(void);