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

Opening new window from Gnome launcher crashes all windows on 200% scaling #6233

Open
mcheshkov opened this issue Oct 5, 2024 · 3 comments
Labels
bug Something isn't working Wayland

Comments

@mcheshkov
Copy link

What Operating System(s) are you seeing this problem on?

Linux Wayland

Which Wayland compositor or X11 Window manager(s) are you using?

Mutter

WezTerm version

20241001_010643_d40c3b63

Did you try the latest nightly build to see if the issue is better (or worse!) than your current version?

Yes, and I updated the version box above to show the version of the nightly that I tried

Describe the bug

When I try to open new terminal window from Gnome launcher it crashes whole app.
If I start first instance from terminal, and then try to middle click in launcher I can see a message about scaling before crash

18:15:01.856  ERROR  wezterm_mux_server_impl::local > writing pdu data buffer: Broken pipe (os error 32)
wl_surface#30: error 2: Buffer size (656x457) must be an integer multiple of the buffer_scale (2).
Protocol error 2 on object wl_surface@30: 
18:15:02.066  ERROR  wezterm_gui                    > running message loop: Protocol error 2 on object wl_surface@30: ; terminating

But when I try to open new window from terminal (by executing wezrem) it does not crash, there's no message about buffer_scale, only about pdu data buffer

ERROR  wezterm_mux_server_impl::local > writing pdu data buffer: Broken pipe (os error 32)

I have 200% scaling. When I turn it back to 100% everything works as expected.

Also strangely related
In 100% scaling new windows have correct window name and icon.
On 200% windows are named "Unknown", and have unknown app icon.

To Reproduce

  1. Use Gnome with 200% desktop scaling
  2. Start wezterm
  3. Open new wezterm window with middle click in bottom panel or launcher

Configuration

no config

Expected Behavior

New window opens without crashing

Logs

No response

Anything else?

No response

@mcheshkov mcheshkov added the bug Something isn't working label Oct 5, 2024
@emilio
Copy link

emilio commented Oct 12, 2024

#6270 has some more info too.

@Holmgren825
Copy link

Holmgren825 commented Nov 19, 2024

I think I'm encountering the same error, but using river 0.3.5. Nightly (as of 2024-11-19) with clean config crashes as soon as the window looses focus with the error ERROR wezterm_gui > running message loop: Io error: Broken pipe (os error 32); terminating. The current stable release does not have this issue. Note that this only happens on a monitor that uses a scaling > 1. For a monitor with scaling = 1, nightly works as expected.

@fndmossmann
Copy link

I've encountered a similar issue when launching wezterm on a screen with fractional scaling (at 125%), in Gnome 46 (Wayland session).
I was using the stable version:

$ wezterm --version
wezterm 20240203-110809-5046fc22

But, I've updated to wezterm-nightly and now it's launching again. (and opening new windows and tabs, as well)

$ wezterm --version
wezterm 20250116-151613-6c443bee

There are still some issues with window decorations, as mentioned by @jankatins on #6341
But, well, those are other issues.
For what is worth, this particular issue seems that has been fixed on nightly.

Error messages from the stable release, if they are somewhat useful:

$ wezterm
15:48:47.400  ERROR  wezterm_gui > running message loop: Error while flushing display: Broken pipe (os error 32); terminating
warning: queue 0x6432e0c207d0 destroyed while proxies still attached:
  wl_buffer@30 still attached
  wl_buffer@53 still attached
  wl_buffer@49 still attached
  wl_buffer@52 still attached
  wl_buffer@50 still attached
  wl_buffer@51 still attached
  wl_buffer@55 still attached
  wl_buffer@28 still attached
  wl_buffer@54 still attached
  wl_buffer@25 still attached
  wl_buffer@26 still attached
  zwp_primary_selection_offer_v1@4278190080 still attached
  wl_callback@29 still attached
  wl_subsurface@48 still attached
  wl_surface@47 still attached
  wl_subsurface@46 still attached
  wl_surface@45 still attached
  wl_subsurface@44 still attached
  wl_surface@43 still attached
  wl_subsurface@42 still attached
  wl_surface@41 still attached
  wl_subsurface@40 still attached
  wl_surface@39 still attached
  xdg_wm_base@22 still attached
  wl_surface@21 still attached
  wl_data_device@18 still attached
  wl_pointer@16 still attached
  zwp_text_input_v3@15 still attached
  wl_keyboard@14 still attached
  zwp_primary_selection_device_v1@13 still attached
  zwp_primary_selection_device_manager_v1@3 still attached
  wl_data_device@12 still attached
  zwp_text_input_manager_v3@11 still attached
  wl_seat@10 still attached
  wl_subcompositor@9 still attached
  wl_data_device_manager@8 still attached
  wl_output@7 still attached
  wl_output@6 still attached
  wl_shm@5 still attached
  wl_compositor@4 still attached
  wl_registry@2 still attached

Running with -n:

$ wezterm -n
wl_surface@45: error 2: Buffer size (12x613) must be an integer multiple of the buffer_scale (2).
15:58:01.640  ERROR  wezterm_gui > running message loop: error during event_q.dispatch protocol_error=Some(ProtocolError { code: 2, object_id: 45, object_interface: "wl_surface", message: "" }): Protocol error (os error 71); terminating
warning: queue 0x601f5c21fea0 destroyed while proxies still attached:
  wl_buffer@26 still attached
  wl_buffer@55 still attached
  wl_buffer@25 still attached
  wl_buffer@54 still attached
  wl_buffer@28 still attached
  zwp_primary_selection_offer_v1@4278190081 still attached
  wl_data_offer@4278190080 still attached
  wl_callback@29 still attached
  wl_subsurface@48 still attached
  wl_surface@47 still attached
  wl_subsurface@46 still attached
  wl_surface@45 still attached
  wl_subsurface@44 still attached
  wl_surface@43 still attached
  wl_subsurface@42 still attached
  wl_surface@41 still attached
  wl_subsurface@40 still attached
  wl_surface@39 still attached
  xdg_wm_base@22 still attached
  wl_surface@21 still attached
  wl_data_device@18 still attached
  wl_pointer@16 still attached
  zwp_text_input_v3@15 still attached
  wl_keyboard@14 still attached
  zwp_primary_selection_device_v1@13 still attached
  zwp_primary_selection_device_manager_v1@3 still attached
  wl_data_device@12 still attached
  zwp_text_input_manager_v3@11 still attached
  wl_seat@10 still attached
  wl_subcompositor@9 still attached
  wl_data_device_manager@8 still attached
  wl_output@7 still attached
  wl_output@6 still attached
  wl_shm@5 still attached
  wl_compositor@4 still attached
  wl_registry@2 still attached

@wez wez added the Wayland label Feb 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Wayland
Projects
None yet
Development

No branches or pull requests

5 participants