mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-29 05:40:23 -04:00
cli-command: Fix wrong condition check of pa_module_load
pa_module_load API's return value is integer which is enum pa_error_code_t with minus such as -PA_ERR_IO if the module loading is failed. pa_cli_command_load gets a return value of pa_module_load as pa_error_code_t which is wrong. Minus integer value could not covert to enum which is defined equal or larger than 0 so that pa_cli_command_load would recognize the return value as larger than 0 if pa_module_load return value (integer) is minus. To fix this issue, I modified return value check logic of pa_module_load API. As same as pa_module_load's return type, integer would be used to check if module load is failed in pa_cli_command_load and the return value would be compared with minus. Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/3801 Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/814>
This commit is contained in:
parent
84f5b742e3
commit
6c77b0191a
1 changed files with 2 additions and 2 deletions
|
|
@ -424,7 +424,7 @@ static int pa_cli_command_info(pa_core *c, pa_tokenizer *t, pa_strbuf *buf, bool
|
|||
|
||||
static int pa_cli_command_load(pa_core *c, pa_tokenizer *t, pa_strbuf *buf, bool *fail) {
|
||||
const char *name;
|
||||
pa_error_code_t err;
|
||||
int err;
|
||||
pa_module *m = NULL;
|
||||
|
||||
pa_core_assert_ref(c);
|
||||
|
|
@ -438,7 +438,7 @@ static int pa_cli_command_load(pa_core *c, pa_tokenizer *t, pa_strbuf *buf, bool
|
|||
}
|
||||
|
||||
if ((err = pa_module_load(&m, c, name, pa_tokenizer_get(t, 2))) < 0) {
|
||||
if (err == PA_ERR_EXIST) {
|
||||
if (err == -PA_ERR_EXIST) {
|
||||
pa_strbuf_puts(buf, "Module already loaded; ignoring.\n");
|
||||
} else {
|
||||
pa_strbuf_puts(buf, "Module load failed.\n");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue