diff options
-rw-r--r-- | calmwm.h | 3 | ||||
-rw-r--r-- | conf.c | 44 | ||||
-rw-r--r-- | parse.y | 45 |
3 files changed, 46 insertions, 46 deletions
@@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: calmwm.h,v 1.79 2009/01/23 18:58:40 oga Exp $ + * $Id: calmwm.h,v 1.80 2009/01/23 19:00:59 okan Exp $ */ #ifndef _CALMWM_H_ @@ -424,6 +424,7 @@ void conf_grab_mouse(struct client_ctx *); void conf_reload(struct conf *); void conf_font(struct conf *); void conf_init(struct conf *); +void conf_clear(struct conf *); void conf_cmd_add(struct conf *, char *, char *, int); int parse_config(const char *, struct conf *); @@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: conf.c,v 1.54 2009/01/23 18:58:40 oga Exp $ + * $Id: conf.c,v 1.55 2009/01/23 19:00:59 okan Exp $ */ #include "headers.h" @@ -160,6 +160,48 @@ conf_init(struct conf *c) } void +conf_clear(struct conf *c) +{ + struct autogroupwin *ag; + struct keybinding *kb; + struct winmatch *wm; + struct cmd *cmd; + struct mousebinding *mb; + + while ((cmd = TAILQ_FIRST(&c->cmdq)) != NULL) { + TAILQ_REMOVE(&c->cmdq, cmd, entry); + free(cmd); + } + + while ((kb = TAILQ_FIRST(&c->keybindingq)) != NULL) { + TAILQ_REMOVE(&c->keybindingq, kb, entry); + free(kb); + } + + while ((ag = TAILQ_FIRST(&c->autogroupq)) != NULL) { + TAILQ_REMOVE(&c->autogroupq, ag, entry); + free(ag->class); + if (ag->name) + free(ag->name); + free(ag->group); + free(ag); + } + + while ((wm = TAILQ_FIRST(&c->ignoreq)) != NULL) { + TAILQ_REMOVE(&c->ignoreq, wm, entry); + free(wm); + } + + while ((mb = TAILQ_FIRST(&c->mousebindingq)) != NULL) { + TAILQ_REMOVE(&c->mousebindingq, mb, entry); + free(mb); + } + + if (c->DefaultFontName != NULL) + free(c->DefaultFontName); +} + +void conf_setup(struct conf *c, const char *conf_file) { struct stat sb; @@ -1,4 +1,4 @@ -/* $OpenBSD: parse.y,v 1.17 2009/01/22 18:16:38 oga Exp $ */ +/* $OpenBSD: parse.y,v 1.18 2009/01/23 19:00:59 okan Exp $ */ /* * Copyright (c) 2002, 2003, 2004 Henning Brauer <henning@openbsd.org> @@ -464,49 +464,6 @@ popfile(void) return (EOF); } -void -conf_clear(struct conf *c) -{ - struct autogroupwin *ag; - struct keybinding *kb; - struct winmatch *wm; - struct cmd *cmd; - struct mousebinding *mb; - - while ((cmd = TAILQ_FIRST(&c->cmdq)) != NULL) { - TAILQ_REMOVE(&c->cmdq, cmd, entry); - free(cmd); - } - - while ((kb = TAILQ_FIRST(&c->keybindingq)) != NULL) { - TAILQ_REMOVE(&c->keybindingq, kb, entry); - free(kb); - } - - while ((ag = TAILQ_FIRST(&c->autogroupq)) != NULL) { - TAILQ_REMOVE(&c->autogroupq, ag, entry); - free(ag->class); - if (ag->name) - free(ag->name); - free(ag->group); - free(ag); - } - - while ((wm = TAILQ_FIRST(&c->ignoreq)) != NULL) { - TAILQ_REMOVE(&c->ignoreq, wm, entry); - free(wm); - } - - while ((mb = TAILQ_FIRST(&c->mousebindingq)) != NULL) { - TAILQ_REMOVE(&c->mousebindingq, mb, entry); - free(mb); - } - - if (c->DefaultFontName != NULL) - free(c->DefaultFontName); -} - - int parse_config(const char *filename, struct conf *xconf) { |