]> git.armaanb.net Git - st.git/blobdiff - st.c
Uses a &[] pointer loop instead of + pointer loop
[st.git] / st.c
diff --git a/st.c b/st.c
index 71b1521cb15d7af96f529ff14eac1206aa1c3d25..5e92db20ac6d9131e206f25d32a73eef27cf2049 100644 (file)
--- a/st.c
+++ b/st.c
@@ -158,8 +158,7 @@ enum escape_state {
 
 enum window_state {
        WIN_VISIBLE = 1,
-       WIN_REDRAW  = 2,
-       WIN_FOCUSED = 4
+       WIN_FOCUSED = 2
 };
 
 enum selection_type {
@@ -2907,7 +2906,7 @@ xloadcols(void) {
        Color *cp;
 
        if(loaded) {
-               for (cp = dc.col; cp < dc.col + LEN(dc.col); ++cp)
+               for (cp = dc.col; cp < &dc.col[LEN(dc.col)]; ++cp)
                        XftColorFree(xw.dpy, xw.vis, xw.cmap, cp);
        }
 
@@ -3739,12 +3738,6 @@ drawregion(int x1, int y1, int x2, int y2) {
 
 void
 expose(XEvent *ev) {
-       XExposeEvent *e = &ev->xexpose;
-
-       if(xw.state & WIN_REDRAW) {
-               if(!e->count)
-                       xw.state &= ~WIN_REDRAW;
-       }
        redraw();
 }
 
@@ -3752,12 +3745,7 @@ void
 visibility(XEvent *ev) {
        XVisibilityEvent *e = &ev->xvisibility;
 
-       if(e->state == VisibilityFullyObscured) {
-               xw.state &= ~WIN_VISIBLE;
-       } else if(!(xw.state & WIN_VISIBLE)) {
-               /* need a full redraw for next Expose, not just a buf copy */
-               xw.state |= WIN_VISIBLE | WIN_REDRAW;
-       }
+       MODBIT(xw.state, e->state != VisibilityFullyObscured, WIN_VISIBLE);
 }
 
 void
@@ -4102,7 +4090,7 @@ run:
        if(argc > 0) {
                /* eat all remaining arguments */
                opt_cmd = argv;
-               if(!opt_title)
+               if(!opt_title && !opt_line)
                        opt_title = basename(xstrdup(argv[0]));
        }
        setlocale(LC_CTYPE, "");