mirror of
https://gitlab.freedesktop.org/pipewire/wireplumber.git
synced 2025-12-20 19:20:04 +01:00
We're using the WpReserveDevice's name as key in the hash table, so we
must update the key as well when we replace an item in the hashtable -
the old device (and its name) will be released.
The side-effect of this is that the *third* device with an identical
name will no longer replace the previous device. This results in the
following sequence:
- dev1 added: name Audio0
- dev1 requests name owner Audio0
- dev2 added: name Audio0
- replace dev1 in the hashtable
- dev1 emits "release" signal
- dev1 unowns the Audio0 name
- dev2 requests name owner Audio0
- dev3 added: name Audio0
- adds to the hashtable because the existing key is now undefined
- dev3 requests name owner Audio0
- error, you cannot request ownership for the same name twice
Fixes #93
|
||
|---|---|---|
| .. | ||
| meson.build | ||
| org.freedesktop.ReserveDevice1.xml | ||
| plugin.c | ||
| plugin.h | ||
| reserve-device.c | ||
| reserve-device.h | ||
| transitions.c | ||
| transitions.h | ||