diff options
author | Felipe Sateler <fsateler@debian.org> | 2015-01-07 21:01:14 -0300 |
---|---|---|
committer | David Henningsson <david.henningsson@canonical.com> | 2015-01-08 13:25:02 +0100 |
commit | 4edc15346bb5691283adb22cc3b902685cbf509b (patch) | |
tree | a232a672f512cb027803ab44c8b728f630f0818e | |
parent | ce950b150d55159ef052a378ef3c99fe1e9665c7 (diff) |
pactl: fix getopt indexing for set-*-volume
When pactl is invoked with any options or the -- specifier, optind will
be > 1. Therefore using a static 3 value is wrong. Use optind+2 as both
offset and count difference.
Bug-Debian: http://bugs.debian.org/774810
-rw-r--r-- | src/utils/pactl.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/utils/pactl.c b/src/utils/pactl.c index f6555b9c5..35dd04ee0 100644 --- a/src/utils/pactl.c +++ b/src/utils/pactl.c @@ -1897,7 +1897,7 @@ int main(int argc, char *argv[]) { sink_name = pa_xstrdup(argv[optind+1]); - if (parse_volumes(argv+optind+2, argc-3) < 0) + if (parse_volumes(argv+optind+2, argc-(optind+2)) < 0) goto quit; } else if (pa_streq(argv[optind], "set-source-volume")) { @@ -1910,7 +1910,7 @@ int main(int argc, char *argv[]) { source_name = pa_xstrdup(argv[optind+1]); - if (parse_volumes(argv+optind+2, argc-3) < 0) + if (parse_volumes(argv+optind+2, argc-(optind+2)) < 0) goto quit; } else if (pa_streq(argv[optind], "set-sink-input-volume")) { @@ -1926,7 +1926,7 @@ int main(int argc, char *argv[]) { goto quit; } - if (parse_volumes(argv+optind+2, argc-3) < 0) + if (parse_volumes(argv+optind+2, argc-(optind+2)) < 0) goto quit; } else if (pa_streq(argv[optind], "set-source-output-volume")) { @@ -1942,7 +1942,7 @@ int main(int argc, char *argv[]) { goto quit; } - if (parse_volumes(argv+optind+2, argc-3) < 0) + if (parse_volumes(argv+optind+2, argc-(optind+2)) < 0) goto quit; } else if (pa_streq(argv[optind], "set-sink-mute")) { |