dmenu

my fork of dmenu
Index Commits Files Refs README LICENSE
commit 2ec16d9cb2661c834e346b4cdef29449ddc2f29c
parent 146bc23c118c40c26df7f2e96b46100649673fc7
Author: Connor Lane Smith <cls@lubutu.com>
Date:   Wed, 23 Jun 2010 13:49:24 +0100

cleaned up
Diffstat:
Mdinput.c | 6++++++
Mdmenu.c | 16+++++++++++++++-
Mdraw.h | 21++++++++++-----------
3 files changed, 31 insertions(+), 12 deletions(-)
diff --git a/dinput.c b/dinput.c
@@ -43,6 +43,12 @@ static unsigned int numlockmask = 0;
 static Bool running = True;
 static Window win;
 
+Display *dpy;
+DC dc;
+int screen;
+unsigned int mw, mh;
+Window parent;
+
 void
 cleanup(void) {
     drawcleanup();
diff --git a/dmenu.c b/dmenu.c
@@ -54,6 +54,7 @@ static char text[4096];
 static int cmdw = 0;
 static int promptw = 0;
 static int ret = 0;
+static unsigned int lines = 0;
 static unsigned int numlockmask = 0;
 static Bool running = True;
 static Item *allitems = NULL;  /* first of all items */
@@ -65,9 +66,14 @@ static Item *curr = NULL;
 static Window win;
 static int (*fstrncmp)(const char *, const char *, size_t) = strncmp;
 static char *(*fstrstr)(const char *, const char *) = strstr;
-static unsigned int lines = 0;
 static void (*calcoffsets)(void) = calcoffsetsh;
 
+Display *dpy;
+DC dc;
+int screen;
+unsigned int mw, mh;
+Window parent;
+
 void
 appenditem(Item *i, Item **list, Item **last) {
     if(!(*last))
@@ -131,6 +137,14 @@ cistrstr(const char *s, const char *sub) {
 
 void
 cleanup(void) {
+    Item *itm;
+
+    while(allitems) {
+        itm = allitems->next;
+        free(allitems->text);
+        free(allitems);
+        allitems = itm;
+    }
     drawcleanup();
     XDestroyWindow(dpy, win);
     XUngrabKeyboard(dpy, CurrentTime);
diff --git a/draw.h b/draw.h
@@ -30,16 +30,15 @@ int textnw(const char *text, unsigned int len);
 int textw(const char *text);
 
 /* variables */
-Display *dpy;
-DC dc;
-int screen;
-unsigned int mw, mh;
-unsigned int spaceitem;
-Window parent;
+extern Display *dpy;
+extern DC dc;
+extern int screen;
+extern unsigned int mw, mh;
+extern Window parent;
 
 /* style */
-const char *font;
-const char *normbgcolor;
-const char *normfgcolor;
-const char *selbgcolor;
-const char *selfgcolor;
+extern const char *font;
+extern const char *normbgcolor;
+extern const char *normfgcolor;
+extern const char *selbgcolor;
+extern const char *selfgcolor;