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

Workspace number at changes -- system freeze #997

Closed
rasatpc opened this issue Apr 5, 2024 · 9 comments · Fixed by #998
Closed

Workspace number at changes -- system freeze #997

rasatpc opened this issue Apr 5, 2024 · 9 comments · Fixed by #998
Assignees
Labels
type:bug Something's broken!
Milestone

Comments

@rasatpc
Copy link

rasatpc commented Apr 5, 2024

  • Fvwm3 version (run: fvwm3 --version)
    fvwm3 1.1.0 (released)

Expected Behaviour

This config has worked well until fvwm3 1.1.0 release.
https://fvwmforums.org/t/any-idea-to-display-the-workspace-number-at-changes/1822/6

It was copied and modified to a PageIndicator script.
https://github.com/rasatpc/Fvwm-KISe/blob/main/core/1Functions/PageIndicator/deskPgNo.sys

Fvwm3 1.1.0 makes FvwmPager flicker and freezes the system for a few seconds. Any action freezes the whole system.

I have not been able to pinpoint the issue, but it seems to do with Module FvwmEvent

Is it a bug or a config error?

@rasatpc rasatpc added the type:bug Something's broken! label Apr 5, 2024
@ThomasAdam
Copy link
Member

Hi @rasatpc

Yes, it's a bug. I think I need to check the DesktopSize broadcast module issue as this implicitly sends a M_NEW_PAGE packet each time.

That being said, the way you've written this panel is written to spawn itself on a new_page event each time seems weird to me. I would instead use a single sticky FvwmButtons instance, and use SendToModule to change the button's text.

@ThomasAdam ThomasAdam self-assigned this Apr 5, 2024
@ThomasAdam ThomasAdam added this to the 1.1.1 milestone Apr 5, 2024
ThomasAdam added a commit that referenced this issue Apr 5, 2024
When updating modules about changes to monitors, etc., only send the
DesktopSize command once, as this is proliferated for every module for
all pages, which is redundant.

Fixes #997
ThomasAdam added a commit that referenced this issue Apr 5, 2024
When updating modules about changes to monitors, etc., only send the
DesktopSize command once, as this is proliferated for every module for
all pages, which is redundant.

Fixes #997
@ThomasAdam
Copy link
Member

@rasatpc

Please can you try compiling fvwm3 on the ta/gh-997 branch? Hopefully that fixes this problem for you.

@rasatpc
Copy link
Author

rasatpc commented Apr 5, 2024

fvwm3 on the ta/gh-997 branch

Slightly better with milder freeze.

  • Menu (left-click) appears, not previously due to freeze.
  • FvwmPager flickers.
  • FvwmPager mini-window shows modules on the desk. Doesn't read the option...
    *FvwmPager: UseSkipList (hides modules)

@ThomasAdam
Copy link
Member

So it does help?

Good.

Whatever you're referring to re UseSkipList, has nothing to do with this issue.

@rasatpc
Copy link
Author

rasatpc commented Apr 5, 2024

Slight help, but still freezes,

Ok, UseSkipList I check later after this system freeze is solved.

@ThomasAdam
Copy link
Member

I don't have any freezes here.

Can you see if there's other factors here which could be contributing to this?

@rasatpc
Copy link
Author

rasatpc commented Apr 5, 2024

Earlier I test with all Kise configs.
Now, default config with RightPanel.
FvwmConsole:
Read deskPgNo.sys

RightPanel's FvwmPager mini-windows are shaking, stops and system freeze.

Did you make any new changes in ta/gh-997 in 3 hours?

ThomasAdam added a commit that referenced this issue Apr 5, 2024
When a module requests information about what it needs to know, it does
so to fvwm by asking "Send_ConfigInfo".  However, if this happens, and
fvwm is already sending information to all modules (such as via a
DesktopSize command), then an infinite loop can take place.

Fixes #997
@ThomasAdam
Copy link
Member

No, but I have just pushed another fix on that branch -- please git pull and try again.

Note also that your config example is still going to spawn a new FvwmButtons each time there's a new_page event. You should rewrite it per my earlier suggestion -- until you do, you will notice flickering as fvwm is trying to deal with that.

@rasatpc
Copy link
Author

rasatpc commented Apr 5, 2024

Thank you, the Page Indicator works fine.

use a single sticky FvwmButtons instance, and use SendToModule to change the button's text.

I don't understand those technical words. Will ask tomorrow. It is late here in Helsinki.... 01:35. Good night.

ThomasAdam added a commit that referenced this issue Apr 10, 2024
When updating modules about changes to monitors, etc., only send the
DesktopSize command once, as this is proliferated for every module for
all pages, which is redundant.

Fixes #997
ThomasAdam added a commit that referenced this issue Apr 10, 2024
When a module requests information about what it needs to know, it does
so to fvwm by asking "Send_ConfigInfo".  However, if this happens, and
fvwm is already sending information to all modules (such as via a
DesktopSize command), then an infinite loop can take place.

Fixes #997
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:bug Something's broken!
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants