Skip to content

Fix double-subscription crash when Settings module is enabled#732

Open
romanstingler wants to merge 1 commit intoMalpenZibo:mainfrom
romanstingler:fix/settings-double-subscription
Open

Fix double-subscription crash when Settings module is enabled#732
romanstingler wants to merge 1 commit intoMalpenZibo:mainfrom
romanstingler:fix/settings-double-subscription

Conversation

@romanstingler
Copy link
Copy Markdown
Collaborator

There was a bug in src/app.rs in the subscription() method.
When Settings was in the module list, the code would subscribe to Settings' underlying D-Bus services (UPower, PulseAudio, NetworkManager) twice:
once through self.modules_subscriptions(), and again explicitly at the end of Subscription::batch() for OSD support.
This double-subscription could corrupt D-Bus proxy state and cause segmentation faults. The fix checks if Settings is in any module list and only adds the explicit subscription when it's not present, eliminating the duplicate while maintaining OSD functionality.

Related to #727.

@github-actions github-actions Bot added the bug Something isn't working label May 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant