mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-01 22:58:50 -04:00
pw-cli: add -m option
To keep the mainloop running and keep the process (and objects) alive. Interesting when doing pw-cli load-module libpipewire-module-loopback.
This commit is contained in:
parent
4821c7ca2f
commit
9255cfbd7c
1 changed files with 13 additions and 7 deletions
|
|
@ -3152,13 +3152,14 @@ int main(int argc, char *argv[])
|
|||
struct pw_loop *l;
|
||||
char *opt_remote = NULL;
|
||||
char *error;
|
||||
bool daemon = false;
|
||||
bool daemon = false, monitor = false;
|
||||
struct remote_data *rd;
|
||||
static const struct option long_options[] = {
|
||||
{ "help", no_argument, NULL, 'h' },
|
||||
{ "version", no_argument, NULL, 'V' },
|
||||
{ "daemon", no_argument, NULL, 'd' },
|
||||
{ "remote", required_argument, NULL, 'r' },
|
||||
{ "help", no_argument, NULL, 'h' },
|
||||
{ "version", no_argument, NULL, 'V' },
|
||||
{ "monitor", no_argument, NULL, 'm' },
|
||||
{ "daemon", no_argument, NULL, 'd' },
|
||||
{ "remote", required_argument, NULL, 'r' },
|
||||
{ NULL, 0, NULL, 0}
|
||||
};
|
||||
int c, i;
|
||||
|
|
@ -3168,7 +3169,7 @@ int main(int argc, char *argv[])
|
|||
setlocale(LC_ALL, "");
|
||||
pw_init(&argc, &argv);
|
||||
|
||||
while ((c = getopt_long(argc, argv, "hVdr:", long_options, NULL)) != -1) {
|
||||
while ((c = getopt_long(argc, argv, "hVmdr:", long_options, NULL)) != -1) {
|
||||
switch (c) {
|
||||
case 'h':
|
||||
show_help(&data, argv[0], false);
|
||||
|
|
@ -3184,6 +3185,9 @@ int main(int argc, char *argv[])
|
|||
case 'd':
|
||||
daemon = true;
|
||||
break;
|
||||
case 'm':
|
||||
monitor = true;
|
||||
break;
|
||||
case 'r':
|
||||
opt_remote = optarg;
|
||||
break;
|
||||
|
|
@ -3250,9 +3254,11 @@ int main(int argc, char *argv[])
|
|||
fprintf(stderr, "Error: \"%s\"\n", error);
|
||||
free(error);
|
||||
}
|
||||
if (!data.quit && data.current) {
|
||||
while (!data.quit && data.current) {
|
||||
data.current->prompt_pending = pw_core_sync(data.current->core, 0, 0);
|
||||
pw_main_loop_run(data.loop);
|
||||
if (!monitor)
|
||||
break;
|
||||
}
|
||||
}
|
||||
spa_list_consume(rd, &data.remotes, link)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue