Fix crash when calling finalize_setup_errno
finalize_setup_errno last parameter must be NULL otherwise it may access
invalid memory.
diff --git a/audio/a2dp.c b/audio/a2dp.c
index 741b134..9cd7207 100644
--- a/audio/a2dp.c
+++ b/audio/a2dp.c
@@ -775,7 +775,7 @@
if (ret == NULL) {
setup->stream = NULL;
- finalize_setup_errno(setup, -EPERM, finalize_config);
+ finalize_setup_errno(setup, -EPERM, finalize_config, NULL);
return;
}
@@ -785,7 +785,7 @@
error("Error on avdtp_open %s (%d)", strerror(-err), -err);
setup->stream = NULL;
- finalize_setup_errno(setup, err, finalize_config);
+ finalize_setup_errno(setup, err, finalize_config, NULL);
}
static void setconf_cfm(struct avdtp *session, struct avdtp_local_sep *sep,
@@ -842,7 +842,7 @@
return;
setup->stream = NULL;
- finalize_setup_errno(setup, -EPERM, finalize_config);
+ finalize_setup_errno(setup, -EPERM, finalize_config, NULL);
return;
}
@@ -850,7 +850,7 @@
if (ret < 0) {
error("Error on avdtp_open %s (%d)", strerror(-ret), -ret);
setup->stream = NULL;
- finalize_setup_errno(setup, ret, finalize_config);
+ finalize_setup_errno(setup, ret, finalize_config, NULL);
}
}
@@ -1043,7 +1043,7 @@
perr = avdtp_start(session, a2dp_sep->stream);
if (perr < 0) {
error("Error on avdtp_start %s (%d)", strerror(-perr), -perr);
- finalize_setup_errno(setup, -EIO, finalize_suspend);
+ finalize_setup_errno(setup, -EIO, finalize_suspend, NULL);
}
}
@@ -1064,7 +1064,7 @@
return TRUE;
finalize_setup_errno(setup, -ECONNRESET, finalize_suspend,
- finalize_resume);
+ finalize_resume, NULL);
return TRUE;
}
@@ -1097,7 +1097,7 @@
return FALSE;
failed:
- finalize_setup_errno(setup, posix_err, finalize_config);
+ finalize_setup_errno(setup, posix_err, finalize_config, NULL);
return FALSE;
}