summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Davenport <qball@blame.services>2022-01-22 10:21:35 +0100
committerDave Davenport <qball@blame.services>2022-01-22 10:21:35 +0100
commitfaa360041e2e7d6e9a60b4d60368b2bdecec708d (patch)
treee3cac49ec664fb198c70d230885fb57c3adcd5ec
parent8817b6a602bdf8be30f4da62128f79b7039d09a5 (diff)
Small cleanups.
-rw-r--r--source/dialogs/script.c28
-rw-r--r--source/xcb.c20
2 files changed, 35 insertions, 13 deletions
diff --git a/source/dialogs/script.c b/source/dialogs/script.c
index 1a0ab258..67997757 100644
--- a/source/dialogs/script.c
+++ b/source/dialogs/script.c
@@ -202,20 +202,22 @@ static DmenuScriptEntry *execute_executor(Mode *sw, char *arg,
actual_size += 256;
retv = g_realloc(retv, (actual_size) * sizeof(DmenuScriptEntry));
}
- size_t buf_length = strlen(buffer) + 1;
- retv[(*length)].entry = g_memdup(buffer, buf_length);
- retv[(*length)].icon_name = NULL;
- retv[(*length)].meta = NULL;
- retv[(*length)].info = NULL;
- retv[(*length)].icon_fetch_uid = 0;
- retv[(*length)].nonselectable = FALSE;
- if (buf_length > 0 && (read_length > (ssize_t)buf_length)) {
- dmenuscript_parse_entry_extras(sw, &(retv[(*length)]),
- buffer + buf_length,
- read_length - buf_length);
+ if (retv) {
+ size_t buf_length = strlen(buffer) + 1;
+ retv[(*length)].entry = g_memdup(buffer, buf_length);
+ retv[(*length)].icon_name = NULL;
+ retv[(*length)].meta = NULL;
+ retv[(*length)].info = NULL;
+ retv[(*length)].icon_fetch_uid = 0;
+ retv[(*length)].nonselectable = FALSE;
+ if (buf_length > 0 && (read_length > (ssize_t)buf_length)) {
+ dmenuscript_parse_entry_extras(sw, &(retv[(*length)]),
+ buffer + buf_length,
+ read_length - buf_length);
+ }
+ retv[(*length) + 1].entry = NULL;
+ (*length)++;
}
- retv[(*length) + 1].entry = NULL;
- (*length)++;
}
}
if (buffer) {
diff --git a/source/xcb.c b/source/xcb.c
index 1274d5dc..0637cd31 100644
--- a/source/xcb.c
+++ b/source/xcb.c
@@ -747,6 +747,10 @@ static int monitor_get_dimension(int monitor_id, workarea *mon) {
}
// find the dimensions of the monitor displaying point x,y
static void monitor_dimensions(int x, int y, workarea *mon) {
+ if (mon == NULL) {
+ g_error("%s: mon == NULL", __FUNCTION__);
+ return;
+ }
memset(mon, 0, sizeof(workarea));
mon->w = xcb->screen->width_in_pixels;
mon->h = xcb->screen->height_in_pixels;
@@ -786,6 +790,10 @@ static int pointer_get(xcb_window_t root, int *x, int *y) {
}
static int monitor_active_from_winid(xcb_drawable_t id, workarea *mon) {
+ if (mon == NULL) {
+ g_error("%s: mon == NULL", __FUNCTION__);
+ return FALSE;
+ }
xcb_window_t root = xcb->screen->root;
xcb_get_geometry_cookie_t c = xcb_get_geometry(xcb->connection, id);
xcb_get_geometry_reply_t *r =
@@ -815,6 +823,10 @@ static int monitor_active_from_id_focused(int mon_id, workarea *mon) {
int retv = FALSE;
xcb_window_t active_window;
xcb_get_property_cookie_t awc;
+ if (mon == NULL) {
+ g_error("%s: mon == NULL", __FUNCTION__);
+ return retv;
+ }
awc = xcb_ewmh_get_active_window(&xcb->ewmh, xcb->screen_nbr);
if (!xcb_ewmh_get_active_window_reply(&xcb->ewmh, awc, &active_window,
NULL)) {
@@ -880,6 +892,10 @@ static int monitor_active_from_id_focused(int mon_id, workarea *mon) {
static int monitor_active_from_id(int mon_id, workarea *mon) {
xcb_window_t root = xcb->screen->root;
int x, y;
+ if (mon == NULL) {
+ g_error("%s: mon == NULL", __FUNCTION__);
+ return FALSE;
+ }
g_debug("Monitor id: %d", mon_id);
// At mouse position.
if (mon_id == -3) {
@@ -955,6 +971,10 @@ workarea mon_cache = {
0,
};
int monitor_active(workarea *mon) {
+ if (mon == NULL) {
+ g_error("%s: mon == NULL", __FUNCTION__);
+ return FALSE;
+ }
g_debug("Monitor active");
if (mon_set) {
if (mon) {