Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement root_change #1091

Merged
merged 1 commit into from
Feb 20, 2024
Merged

Implement root_change #1091

merged 1 commit into from
Feb 20, 2024

Conversation

Monsterovich
Copy link
Contributor

This also fixes the crash when the root window size has changed which caused the backend to be destroyed.

@absolutelynothelix
Copy link
Collaborator

this change makes xrender and dummy backends segfault.

@Monsterovich
Copy link
Contributor Author

this change makes xrender and dummy backends segfault.

I added a check for root_change, because it's not present in these backends (there should be some implementation at least in xrender, idk).

@yshui
Copy link
Owner

yshui commented Jul 2, 2023

not commenting on whether this is something we want to do, but this change only masks the real problem: stale flags when the backend is destroyed. we need to investigate why that's happening.

@Monsterovich
Copy link
Contributor Author

not commenting on whether this is something we want to do, but this change only masks the real problem: stale flags when the backend is destroyed. we need to investigate why that's happening.

I honestly don't know why this is happening either. Maybe if we resolve the misuse of deinitialization, it will "fix" itself.

Because I always use unredir_if_possible and I don't see this assert crashing every time.

@yshui
Copy link
Owner

yshui commented Jul 2, 2023

it will "fix" itself.

i don't think this is a good attitude towards bugs.

@Monsterovich
Copy link
Contributor Author

i don't think this is a good attitude towards bugs.

Yeah, well, try to catch a bug that pops up once a week.

I'm sure that's not the only reason, in this ticket I was catching the same crash in this assert when just switching windows but only in a specific program.

@haarp
Copy link

haarp commented Oct 2, 2023

fwiw, I can reproduce the Stale flags set for mapped window 0x0123456789 during backend destruction bug almost daily. It seems to happen when the machine wakes up from suspend to a different monitor layout and then everything goes bonkers trying to set up monitors while the screensaver tries to keep stuff hidden.

Will try this patch.

@Monsterovich
Copy link
Contributor Author

Will try this patch.

I have this patch fixing this problem entirely, and I've been running this patch for months now. Without it, picom is unusable for me.

@haarp
Copy link

haarp commented Oct 10, 2023

Haven't had anymore crashes when changing the monitor layout with this patch. Thanks! Would be great to get it merged :)

yshui
yshui previously requested changes Oct 15, 2023
src/picom.c Outdated Show resolved Hide resolved
src/backend/backend.h Outdated Show resolved Hide resolved
yshui added a commit that referenced this pull request Feb 18, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
yshui added a commit that referenced this pull request Feb 18, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
yshui added a commit that referenced this pull request Feb 18, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
yshui added a commit that referenced this pull request Feb 19, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
yshui added a commit that referenced this pull request Feb 19, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
yshui added a commit that referenced this pull request Feb 19, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
yshui added a commit that referenced this pull request Feb 19, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
yshui added a commit that referenced this pull request Feb 19, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
yshui added a commit that referenced this pull request Feb 19, 2024
Signed-off-by: Yuxuan Shui <[email protected]>
@yshui yshui closed this in 618cf64 Feb 19, 2024
@yshui yshui reopened this Feb 19, 2024
@yshui yshui enabled auto-merge February 20, 2024 17:37
@yshui yshui merged commit ef722e5 into yshui:next Feb 20, 2024
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants