hyprwm / Hyprland

Hyprland is a highly customizable dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
https://hyprland.org
BSD 3-Clause "New" or "Revised" License
17.92k stars 753 forks source link

Firefox crashes on drag and drop. #6102

Open EnolaGae opened 1 month ago

EnolaGae commented 1 month ago

Hyprland Version

System/Version info ```sh Hyprland, built from branch main at commit 94c20a186372aace78b188842848b873eb3ebbd7 (). Date: Mon May 13 08:47:59 2024 Tag: , commits: 4693 flags: (if any) System Information: System name: Linux Node name: fedora Release: 6.8.9-300.fc40.x86_64 Version: #1 SMP PREEMPT_DYNAMIC Thu May 2 18:59:06 UTC 2024 GPU information: 07:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Rembrandt [Radeon 680M] [1002:1681] (rev c8) (prog-if 00 [VGA controller]) os-release: NAME="Fedora Linux" VERSION="40 (Workstation Edition)" ID=fedora VERSION_ID=40 VERSION_CODENAME="" PLATFORM_ID="platform:f40" PRETTY_NAME="Fedora Linux 40 (Workstation Edition)" ANSI_COLOR="0;38;2;60;110;180" LOGO=fedora-logo-icon CPE_NAME="cpe:/o:fedoraproject:fedora:40" DEFAULT_HOSTNAME="fedora" HOME_URL="https://fedoraproject.org/" DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f40/system-administrators-guide/" SUPPORT_URL="https://ask.fedoraproject.org/" BUG_REPORT_URL="https://bugzilla.redhat.com/" REDHAT_BUGZILLA_PRODUCT="Fedora" REDHAT_BUGZILLA_PRODUCT_VERSION=40 REDHAT_SUPPORT_PRODUCT="Fedora" REDHAT_SUPPORT_PRODUCT_VERSION=40 SUPPORT_END=2025-05-13 VARIANT="Workstation Edition" VARIANT_ID=workstation plugins: ```

Bug or Regression?

Bug

Description

When using Firefox, I crash instantly when doing a drag and drop (moving a tab, moving a text chunk, an image, etc). I have only noticed this issue after updating to the May 13th branch.

How to reproduce

To reproduce, use Firefox ( Mozilla Firefox 125.0.3 ) and the latest version of hyprland-git ( commit 94c20a186372aace78b188842848b873eb3ebbd7 ) and open a tab. Then try to drag it around. Firefox should crash instantly.

Crash reports, logs, images, videos

Crash report

PickNicko13 commented 1 month ago

Doesn't seem to happen on d693c44 and Librewolf 125.0.3

vaxerski commented 1 month ago

looks like a protocol error on firefox's side. Can you post WAYLAND_DEBUG=1 firefox logs of when it happens?

EnolaGae commented 1 month ago

looks like a protocol error on firefox's side. Can you post WAYLAND_DEBUG=1 firefox logs of when it happens?

Sorry, but i'm not sure how to do that :x


> firefox --WAYLAND_DEBUG

[GFX1-]: Wayland protocol error: wl_display@1: error 1: invalid arguments for wl_data_offer@4278190086.accept

ExceptionHandler::GenerateDump cloned child 148745
ExceptionHandler::SendContinueSignalToChild sent continue signal to child
ExceptionHandler::WaitForContinueSignal waiting for continue signal...
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.

This is a log of when I open Firefox and make it crash. I updated hyprland-git twice since making that report, and still get the issue. I'm using the copr repo on Fedora 40 if that can help too

EnolaGae commented 1 month ago

Doesn't seem to happen on d693c44 and Librewolf 125.0.3

It does happen to me on librewolf as well. I'm on de9798fc now. (I also cannot copy paste for some godforsaken reason, not sure if it is related or not - only seems to happen with firefox opened)

vaxerski commented 1 month ago

can you try updating hyprwayland-scanner to git and then rebuilding hyprland?

EnolaGae commented 1 month ago

can you try updating hyprwayland-scanner to git and then rebuilding hyprland?

Might be a dumb question but since I've been using the copr repo I'm not sure how to swap between the two?

vaxerski commented 1 month ago

me neither, I dont use fedora. That's up to you to discover.

EnolaGae commented 1 month ago

can you try updating hyprwayland-scanner to git and then rebuilding hyprland?

I am unable to build hyprland from source, due to dependencies missing (xwayland) when they aren't. I understand that it's an issue with the rewrite going on, though I might be a bit too dumb to understand the how or why :P rolled back to 0.40.0, and it works again.

shogeki commented 1 month ago

I can't reproduce the crash exactly, but dragging a tab out of firefox to another workspace used to work (somewhat), but now always goes to Workspace 1 regardless of where you drag it to. Spawning additional windows via a launcher or macro also only spawns your extra windows in Workspace 1.

There is also some new unintended behavior regarding how Firefox reopens windows after being closed via killactive. Sometimes now if I launch firefox, it opens 3 windows that were previously open. If I close them with killactive, they come back the next time firefox full launches (with no process already open). But if I kill them with clicking the X in the top right of the window, they do not come back.

All of these were working previously in v.0.40

PickNicko13 commented 1 month ago

Just checked and: 1) dragging a tab to another monitor creates a window there; 2) using a keybinding or launcher creates a new window on the current workspace (regardless of it's number).

What you described seems like it might be caused by window rules. Are you sure there aren't any rules about Firefox being on workspace 1 in your config(s)?

Note: still using commit d693c44 and LibreWolf 125.0.3.

vaxerski commented 1 month ago

could also be initial workspace tracking

shogeki commented 1 month ago

Initial workspace tracking did fix the workspace 1 issue! I set to 2 to try to fix xwayland issues but 0 or 1 seems to work as normal

However, dragging firefox tabs into workspaces containing certain windows (e.g. alacritty, discord) results in a glitched or crashed firefox tab now for me.

Hobbyist11 commented 4 days ago

Hi, I think I have a similar case, but Firefox crashes almost instantly when using a graphics tablet.

[kenny@desktop ~]$ firefox
ExceptionHandler::GenerateDump cloned child 2140
ExceptionHandler::SendContinueSignalToChild sent continue signal to child
ExceptionHandler::WaitForContinueSignal waiting for continue signal...
[kenny@desktop ~]$ Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.

Logs show the following threads have failed?

0   libwayland-client.so.0  libwayland-client.so.0@0x4bb4       context
Ø 1     libgdk-3.so.0   libgdk-3.so.0@0x51458       scan
Ø 2     libgdk-3.so.0   libgdk-3.so.0@0x3ff5a       scan
Ø 3     libxul.so   libxul.so@0x6442f4f         scan
Ø 4     libxul.so   libxul.so@0x2b8120f         scan
Ø 5     libxul.so   libxul.so@0x60b490b         scan
Ø 6     libxul.so   libxul.so@0x134c1ff         scan
Ø 7     libxul.so   libxul.so@0x34eea2c         scan
Ø 8     libxul.so   libxul.so@0x2ef625d         scan
Ø 9     libxul.so   libxul.so@0x2dbb530         scan
Ø 10    libxul.so   libxul.so@0x2dc3aec         scan
Ø 11    libxul.so   libxul.so@0x2dcb311         scan
Ø 12    libxul.so   libxul.so@0x5299121         scan
Ø 13    libxul.so   libxul.so@0x1680d7d         scan
Ø 14    libxul.so   libxul.so@0x30c2243         scan
Ø 15    libxul.so   libxul.so@0x33cde35         scan
Agent00Ming commented 4 days ago

@Hobbyist11 that's #6312

Hobbyist11 commented 3 days ago

@Hobbyist11 that's #6312

oh thanks! My bad!