summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mode-key.c1
-rw-r--r--screen-write.c1
-rw-r--r--screen.c2
-rw-r--r--status.c1
4 files changed, 5 insertions, 0 deletions
diff --git a/mode-key.c b/mode-key.c
index ccd5465c..26eb771e 100644
--- a/mode-key.c
+++ b/mode-key.c
@@ -337,6 +337,7 @@ mode_key_free_trees(void)
while (!SPLAY_EMPTY(mtab->tree)) {
mbind = SPLAY_ROOT(mtab->tree);
SPLAY_REMOVE(mode_key_tree, mtab->tree, mbind);
+ xfree(mbind);
}
}
}
diff --git a/screen-write.c b/screen-write.c
index 449c3a35..d9b523c4 100644
--- a/screen-write.c
+++ b/screen-write.c
@@ -91,6 +91,7 @@ screen_write_strlen(int utf8flag, const char *fmt, ...)
}
}
+ xfree(msg);
return (size);
}
diff --git a/screen.c b/screen.c
index 650278b2..b2bcffa3 100644
--- a/screen.c
+++ b/screen.c
@@ -63,6 +63,8 @@ screen_reinit(struct screen *s)
void
screen_free(struct screen *s)
{
+ if (s->tabs != NULL)
+ xfree(s->tabs);
xfree(s->title);
grid_destroy(s->grid);
}
diff --git a/status.c b/status.c
index 7fcf5e9b..e4836d34 100644
--- a/status.c
+++ b/status.c
@@ -801,6 +801,7 @@ status_prompt_key(struct client *c, int key)
memcpy(first, s, strlen(s));
c->prompt_index = (first - c->prompt_buffer) + strlen(s);
+ xfree(s);
c->flags |= CLIENT_STATUS;
break;