diff options
-rw-r--r-- | xrandr.c | 18 |
1 files changed, 18 insertions, 0 deletions
@@ -2641,6 +2641,8 @@ get_monitors(Bool get_active) if (n == -1) fatal("get monitors failed\n"); monitors = calloc(1, sizeof (monitors_t)); + if (!monitors) + fatal ("out of memory\n"); monitors->n = n; monitors->monitors = m; } @@ -3008,6 +3010,8 @@ main (int argc, char **argv) if (!config_output) argerr ("%s must be used after --output\n", argv[i]); if (i+2 >= argc) argerr ("%s requires two arguments\n", argv[i]); prop = malloc (sizeof (output_prop_t)); + if (!prop) + fatal ("out of memory\n"); prop->next = config_output->props; config_output->props = prop; prop->name = argv[++i]; @@ -3149,6 +3153,8 @@ main (int argc, char **argv) umode_t *m = calloc (1, sizeof (umode_t)); double clock; + if (!m) + fatal ("out of memory\n"); ++i; if (i + 9 >= argc) argerr ("failed to parse '%s' as a mode specification\n", argv[i]); @@ -3190,6 +3196,8 @@ main (int argc, char **argv) { umode_t *m = calloc (1, sizeof (umode_t)); + if (!m) + fatal ("out of memory\n"); if (++i >= argc) argerr ("%s requires an argument\n", argv[i-1]); set_name (&m->name, argv[i], name_string|name_xid); m->action = umode_destroy; @@ -3203,6 +3211,8 @@ main (int argc, char **argv) { umode_t *m = calloc (1, sizeof (umode_t)); + if (!m) + fatal ("out of memory\n"); if (i+2 >= argc) argerr ("%s requires two arguments\n", argv[i]); set_name (&m->output, argv[++i], name_string|name_xid); set_name (&m->name, argv[++i], name_string|name_xid); @@ -3217,6 +3227,8 @@ main (int argc, char **argv) { umode_t *m = calloc (1, sizeof (umode_t)); + if (!m) + fatal ("out of memory\n"); if (i+2 >= argc) argerr ("%s requires two arguments\n", argv[i]); set_name (&m->output, argv[++i], name_string|name_xid); set_name (&m->name, argv[++i], name_string|name_xid); @@ -3276,6 +3288,8 @@ main (int argc, char **argv) char *n; char *geom; + if (!m) + fatal ("out of memory\n"); if (i+3 >= argc) argerr("%s requires three argument\n", argv[i]); n = argv[++i]; if (*n == '*') { @@ -3299,6 +3313,8 @@ main (int argc, char **argv) printf ("output list %s\n", o); for (; (t = strtok(o, ",")) != NULL; o = NULL) { m->outputs = realloc(m->outputs, (m->noutput + 1) * sizeof (name_t)); + if (!m->outputs) + fatal ("out of memory\n"); printf ("add monitor %s\n", t); set_name(&m->outputs[m->noutput++], t, name_string|name_xid|name_index); printf ("output name %s\n", m->outputs[m->noutput-1].string); @@ -3314,6 +3330,8 @@ main (int argc, char **argv) { umonitor_t *m = calloc(1, sizeof (umonitor_t)), **l; + if (!m) + fatal ("out of memory\n"); if (++i >= argc) argerr("%s requires an argument\n", argv[i-1]); m->name = argv[i]; |