mirror of
https://git.outfoxxed.me/quickshell/quickshell.git
synced 2026-04-10 06:11:54 +10:00
services/pipewire: ignore ENOENT errors
Pipewire describes all errors as fatal, however these just aren't, don't seem to be squashable, and resetting for them breaks users.
This commit is contained in:
parent
a849a88893
commit
5721955686
1 changed files with 9 additions and 4 deletions
|
|
@ -143,12 +143,17 @@ void PwCore::onSync(void* data, quint32 id, qint32 seq) {
|
||||||
void PwCore::onError(void* data, quint32 id, qint32 /*seq*/, qint32 res, const char* message) {
|
void PwCore::onError(void* data, quint32 id, qint32 /*seq*/, qint32 res, const char* message) {
|
||||||
auto* self = static_cast<PwCore*>(data);
|
auto* self = static_cast<PwCore*>(data);
|
||||||
|
|
||||||
if (message != nullptr) {
|
// Pipewire's documentation describes the error event as being fatal, however it isn't.
|
||||||
qCWarning(logLoop) << "Fatal pipewire error on object" << id << "with code" << res << message;
|
// We're not sure what causes these ENOENTs on device removal, presumably something in
|
||||||
} else {
|
// the teardown sequence, but they're harmless. Attempting to handle them as a fatal
|
||||||
qCWarning(logLoop) << "Fatal pipewire error on object" << id << "with code" << res;
|
// error causes unnecessary triggers for shells.
|
||||||
|
if (res == -ENOENT) {
|
||||||
|
qCDebug(logLoop) << "Pipewire ENOENT on object" << id << "with code" << res << message;
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
qCWarning(logLoop) << "Pipewire error on object" << id << "with code" << res << message;
|
||||||
|
|
||||||
emit self->fatalError();
|
emit self->fatalError();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue