Nedko Arnaudov
997630bfb7
use strings for app levels
...
With jack-session on the manege, strict L0-L3 classification
does not reflect the actual situation. LASH and jack-session
are still L2 though.
2011-07-28 15:15:47 +03:00
Nedko Arnaudov
7f512b33fc
ladishd: fix use of uninitialized memory
...
sizeof(bool) != sizeof(dbus_bool_t)
on x86, 1 != 4
2011-05-16 06:52:13 +03:00
Nedko Arnaudov
891805634d
ladishd: better handling for L1 apps with a2j ports. Fix for #62
2011-01-02 04:27:21 +02:00
Nedko Arnaudov
fb7138915e
ladishd: dump params of loaded apps after xml load
2010-12-28 06:57:32 +02:00
Nedko Arnaudov
5288134676
ladishd: save&restore app associations of vclients. Fix for #149
2010-12-28 04:33:44 +02:00
Nedko Arnaudov
a3956df783
ladishd: send termination signals to firstborn pgrp. Fix for #123
...
if the pgrp of the first child is different from pgrp of the jack client,
send SIGTERM and SIGKILL to both process groups.
This changeset also switches termination signals send from pid to pgrp
2010-12-25 03:52:39 +02:00
Nedko Arnaudov
e8f9b6b02e
ladishd: Deassociate pids of disappearing clients. Fix for #119
2010-11-30 00:13:11 +02:00
Nedko Arnaudov
4248abe1d7
ladishd: fix use of uninitialized var in ladish_app_supervisor_set_project_name()
2010-11-18 05:10:18 +02:00
Nedko Arnaudov
99b1ab0da4
ladishd: set env vars for use in commandlines
2010-11-18 02:59:06 +02:00
Nedko Arnaudov
4b9da6ffae
ladishd: do a better cleanup on project unload and on load failure. Partial fix for #117
...
The project state now is can now have more than one state. The project
unload sequence now first removes all connections, then stopps all
apps, and as last step - clears the graph. When project load fails,
ladish_room_unload_project() is not called anymore, because unloading
of room even without apps is now a multistep process. Instead, a new
function, ladish_room_clear_project(), is introduced. It is called
when project load fails and as last step in project unload.
2010-11-13 18:13:10 +02:00
Nedko Arnaudov
698bf81a3b
daemon: better handling for non-direct childs. Fixes #62
...
If the first JACK client that appears has pid different from the one
of the child process, send SIGUSR1 on L1 save to this first
grandchild.
This changeset fixes the "run L1 app in terminal" issue and the
similar issue with dash (the default shell on Debian and Ubuntu, that
for simple commandlines does fork() and exec() instead of just exec(),
like bash does. This changeset also fixes the situation with complex
commandlines that result in only one JACK client.
The complex commandlines that result in multiple processes creating
JACK clients are handled by sending the SIGUSR1 to the first process
that creates JACK client. In future this could be improved by sending
SIGUSR1 to all of them but it is probably better to avoid such
situations by creating one app per JACK-creating process.
2010-10-24 03:03:25 +03:00
Nikita Zlobin
6e2e650bb5
daemon: app_supervisor.c: Include config.h to have _GNU_SOURCE always defined first. Necessary to get working some GNU extensions
2010-10-20 17:48:41 +06:00
Nedko Arnaudov
3657b68d64
ladishd: fix introspection data for AppSupervisor.IsAppRunning
2010-09-21 23:49:10 +03:00
Nedko Arnaudov
7a5ba755e9
Add app list version number to the AppStateChanged signal and check it
2010-09-03 01:49:11 +03:00
Nedko Arnaudov
5374af8866
daemon: update app list version when adding and removing apps
...
gladish now takes it into account and skipped the changes because the version
was not incremented
2010-09-02 21:56:10 +03:00
Nedko Arnaudov
ac1de1cc6a
daemon: handle rename of apps that have non-unique names
2010-08-30 00:40:17 +03:00
Nedko Arnaudov
76a8b6161b
daemon: handle apps with same name in different vgraphs
2010-08-30 00:05:57 +03:00
Nedko Arnaudov
b396329c5d
daemon: implementation of project load
2010-08-08 23:51:31 +03:00
Nedko Arnaudov
1d908a66d6
daemon: saveable projects
2010-08-06 05:00:04 +03:00
Nedko Arnaudov
a08831a0ca
daemon: early check level validity when new app is being added
2010-06-13 21:34:28 +03:00
Nedko Arnaudov
d5c7bf6a6c
Don't send SIGUSR1 to not started L1 apps. Fix for #96
...
* ensure that kill() is called only from one place and that pid is valid
* cleanup and extend app_supervisor functions related to sending signals
2010-05-27 02:10:30 +03:00
Nedko Arnaudov
e82916b5d9
daemon: queued remove app command
...
On app removal, wait app to stop and delete graph objects related to it.
Fixes #86
2010-05-16 11:22:13 +03:00
Nedko Arnaudov
c830748430
daemon: make stop and kill app commands async ones
2010-05-08 22:20:08 +03:00
Nedko Arnaudov
d2782283a7
daemon: cmd_start_app -> cmd_change_app_state
2010-05-08 21:28:56 +03:00
Nedko Arnaudov
df1c44647b
daemon: maintain app state enum
2010-05-08 20:40:52 +03:00
Nedko Arnaudov
e8e64de150
daemon: document app supervisor methods as sync/async
2010-05-08 19:32:51 +03:00
Nedko Arnaudov
e913955b1d
daemon: ladish_app_supervisor_check_app_name()
...
ladish_app_supervisor_find_app_by_name() was not really useful because name can change.
Apps should be searched by their unqiue dbus id instead.
2010-05-08 18:02:39 +03:00
Nedko Arnaudov
e5151a68b2
daemon: remove dead code
2010-05-05 01:24:47 +03:00
Nedko Arnaudov
cb11dd8edf
daemon: detect unexpected app termination and notify user
2010-05-05 01:23:20 +03:00
Nedko Arnaudov
bb7a63e216
daemon: handle start_app requests asynchronously
2010-05-05 01:09:42 +03:00
Nedko Arnaudov
16ca901d9a
daemon: new_app command
...
This introduces no new functionality but changes the way new apps are started.
Previously new app request were not queued, they were synchronous.
Now they are queued and asynchronous.
2010-05-04 23:48:23 +03:00
Nedko Arnaudov
43deb74a41
daemon: disable log dump
2010-05-04 22:24:27 +03:00
Nedko Arnaudov
8948f99d7c
daemon: refuse to delete room if it has active apps. Fix for #85
2010-04-26 03:47:10 +03:00
Nedko Arnaudov
58db7cba75
daemon: handle room app renames
2010-04-04 22:05:25 +03:00
Nedko Arnaudov
e2c0400548
daemon: add commented logs
2010-04-04 00:31:14 +03:00
Nedko Arnaudov
963d4ff0ec
daemon: properly bury dead of room child app processes
2010-04-03 16:51:02 +03:00
Nedko Arnaudov
764873efd5
implement level 1
2009-12-27 04:19:24 +02:00
Nedko Arnaudov
093af66573
rename graph clients when app is renamed
...
this fixes autoconnection too because hidden clients are searched by name
2009-12-26 22:46:20 +02:00
Nedko Arnaudov
d7e58c7efd
app properties dialog. Fixes #21
2009-12-26 21:28:06 +02:00
Nedko Arnaudov
a5511c9cd1
daemon: use basename when deducing app name from app command-line. Closes #22
2009-12-11 01:41:59 +02:00
Nedko Arnaudov
5eb3930bc4
daemon: find app name when client appears
2009-12-11 00:11:03 +02:00
Nedko Arnaudov
98745d3543
daemon: don't autostart new apps when studio is stopped
2009-12-08 21:08:51 +02:00
Nedko Arnaudov
20239b75b6
daemon: fix memory leak
2009-12-08 21:02:38 +02:00
Nedko Arnaudov
2bbcd652a8
ladishd: stop apps on studio stop
2009-12-05 00:54:41 +02:00
Nedko Arnaudov
0b6ad2626f
ladishd: app list serialization; autolaunch on load
2009-12-05 00:42:40 +02:00
Nedko Arnaudov
89461c363c
app list is now managable from gladish
2009-12-04 21:37:39 +02:00
Nedko Arnaudov
094d7ba9d7
implement more app list IPC code
2009-12-04 15:15:14 +02:00
Nedko Arnaudov
6b7103ead6
ladishd: maintain list of currently running apps
2009-11-30 23:45:14 +02:00
Nedko Arnaudov
8acc3ee6d2
ladishd: rework loader interface
2009-11-30 16:39:59 +02:00
Nedko Arnaudov
e46ea7b77b
ladishd: basic app supervisor
2009-11-30 01:22:58 +02:00