summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--desktop-shell/shell.c7
-rw-r--r--src/screenshooter.c10
-rw-r--r--src/text-backend.c7
3 files changed, 18 insertions, 6 deletions
diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index 61033093..234849a2 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -575,6 +575,7 @@ shell_configuration(struct desktop_shell *shell)
struct weston_config_section *section;
int duration;
char *s, *client;
+ int ret;
section = weston_config_get_section(shell->compositor->config,
"screensaver", NULL, NULL);
@@ -585,8 +586,10 @@ shell_configuration(struct desktop_shell *shell)
section = weston_config_get_section(shell->compositor->config,
"shell", NULL, NULL);
- asprintf(&client, "%s/%s", weston_config_get_libexec_dir(),
- WESTON_SHELL_CLIENT);
+ ret = asprintf(&client, "%s/%s", weston_config_get_libexec_dir(),
+ WESTON_SHELL_CLIENT);
+ if (ret < 0)
+ client = NULL;
weston_config_section_get_string(section,
"client", &s, client);
free(client);
diff --git a/src/screenshooter.c b/src/screenshooter.c
index af2c754a..cafbf107 100644
--- a/src/screenshooter.c
+++ b/src/screenshooter.c
@@ -287,9 +287,15 @@ screenshooter_binding(struct weston_seat *seat, uint32_t time, uint32_t key,
{
struct screenshooter *shooter = data;
char *screenshooter_exe;
+ int ret;
- asprintf(&screenshooter_exe, "%s/%s", weston_config_get_libexec_dir(),
- "/weston-screenshooter");
+ ret = asprintf(&screenshooter_exe, "%s/%s",
+ weston_config_get_libexec_dir(),
+ "/weston-screenshooter");
+ if (ret < 0) {
+ weston_log("Could not construct screenshooter path.\n");
+ return;
+ }
if (!shooter->client)
shooter->client = weston_client_launch(shooter->ec,
diff --git a/src/text-backend.c b/src/text-backend.c
index 7d2a0640..e9578a41 100644
--- a/src/text-backend.c
+++ b/src/text-backend.c
@@ -938,11 +938,14 @@ text_backend_configuration(struct text_backend *text_backend)
{
struct weston_config_section *section;
char *client;
+ int ret;
section = weston_config_get_section(text_backend->compositor->config,
"input-method", NULL, NULL);
- asprintf(&client, "%s/weston-keyboard",
- weston_config_get_libexec_dir());
+ ret = asprintf(&client, "%s/weston-keyboard",
+ weston_config_get_libexec_dir());
+ if (ret < 0)
+ client = NULL;
weston_config_section_get_string(section, "path",
&text_backend->input_method.path,
client);