Silence “variable length array bound evaluates to non-positive value 0”

This commit is contained in:
Daniel Eklöf 2021-08-26 13:27:29 +02:00
parent b8dd247111
commit 1079bca3eb
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
3 changed files with 13 additions and 6 deletions

View file

@ -25,6 +25,8 @@
#include "wayland.h" #include "wayland.h"
#endif #endif
#define max(x, y) ((x) > (y) ? (x) : (y))
/* /*
* Calculate total width of left/center/rigth groups. * Calculate total width of left/center/rigth groups.
* Note: begin_expose() must have been called * Note: begin_expose() must have been called
@ -293,9 +295,9 @@ run(struct bar *_bar)
set_cursor(_bar, "left_ptr"); set_cursor(_bar, "left_ptr");
/* Start modules */ /* Start modules */
thrd_t thrd_left[bar->left.count]; thrd_t thrd_left[max(bar->left.count, 1)];
thrd_t thrd_center[bar->center.count]; thrd_t thrd_center[max(bar->center.count, 1)];
thrd_t thrd_right[bar->right.count]; thrd_t thrd_right[max(bar->right.count, 1)];
for (size_t i = 0; i < bar->left.count; i++) { for (size_t i = 0; i < bar->left.count; i++) {
struct module *mod = bar->left.mods[i]; struct module *mod = bar->left.mods[i];

View file

@ -23,6 +23,8 @@
#include "../particles/dynlist.h" #include "../particles/dynlist.h"
#include "../plugin.h" #include "../plugin.h"
#define max(x, y) ((x) > (y) ? (x) : (y))
typedef tll(char *) mount_point_list_t; typedef tll(char *) mount_point_list_t;
struct partition { struct partition {
@ -116,7 +118,7 @@ content(struct module *mod)
} }
} }
struct exposable *exposables[tll_length(partitions)]; struct exposable *exposables[max(tll_length(partitions), 1)];
size_t idx = 0; size_t idx = 0;
tll_foreach(partitions, it) { tll_foreach(partitions, it) {
@ -621,7 +623,7 @@ from_conf(const struct yml_node *node, struct conf_inherit inherited)
right_spacing != NULL ? yml_value_as_int(right_spacing) : 0; right_spacing != NULL ? yml_value_as_int(right_spacing) : 0;
size_t ignore_count = ignore_list != NULL ? yml_list_length(ignore_list) : 0; size_t ignore_count = ignore_list != NULL ? yml_list_length(ignore_list) : 0;
const char *ignore[ignore_count]; const char *ignore[max(ignore_count, 1)];
if (ignore_list != NULL) { if (ignore_list != NULL) {
size_t i = 0; size_t i = 0;

View file

@ -13,6 +13,8 @@
#include "i3-ipc.h" #include "i3-ipc.h"
#include "i3-common.h" #include "i3-common.h"
#define max(x, y) ((x) > (y) ? (x) : (y))
struct input { struct input {
bool exists; bool exists;
char *identifier; char *identifier;
@ -65,7 +67,8 @@ content(struct module *mod)
mtx_lock(&mod->lock); mtx_lock(&mod->lock);
struct exposable *particles[m->num_existing_inputs]; struct exposable *particles[max(m->num_existing_inputs, 1)];
for (size_t i = 0, j = 0; i < m->num_inputs; i++) { for (size_t i = 0, j = 0; i < m->num_inputs; i++) {
const struct input *input = &m->inputs[i]; const struct input *input = &m->inputs[i];