From 6980e5c3b7151745c5303253702293d4edb8e852 Mon Sep 17 00:00:00 2001 From: Matt Ranostay Date: Tue, 30 Apr 2019 08:45:37 -0700 Subject: binding: mediaplayer: fix segfault in volume command When no volume field is passed it caused a null pointer dereference Bug-AGL: SPEC-2368 Change-Id: Ia11ae28b38455a597d1b31a044a711e21928b0cc Signed-off-by: Matt Ranostay --- binding/afm-mediaplayer-binding.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/binding/afm-mediaplayer-binding.c b/binding/afm-mediaplayer-binding.c index 9eea30e..4720b63 100644 --- a/binding/afm-mediaplayer-binding.c +++ b/binding/afm-mediaplayer-binding.c @@ -507,7 +507,15 @@ static void gstreamer_controls(afb_req_t request) } case VOLUME_CMD: { const char *parameter = afb_req_value(request, "volume"); - long int volume = strtol(parameter, NULL, 10); + long int volume; + + if (!parameter) { + afb_req_fail(request, "failed", "invalid volume"); + return; + } + + volume = strtol(parameter, NULL, 10); + errno = 0; if (volume == 0 && errno) { afb_req_fail(request, "failed", "invalid volume"); -- cgit 1.2.3-korg