mumble-voip / mumble

Mumble is an open-source, low-latency, high quality voice chat software.
https://www.mumble.info
Other
6.13k stars 1.1k forks source link

Mumble client crashes when changing application language #4932

Open woodkoodaa opened 3 years ago

woodkoodaa commented 3 years ago

Describe the bug Mumble client crashes when changing application language while connected to server. After "recovering" from the crash, language is changed. Problem does not happen when I am not connected to server.

Steps to Reproduce Open Mumble Connect to server Change language in Configure - Settings - User Interface - Language, click OK Mumble prompts to restart Mumble because of changed setting, click Yes Mumble closes window Mumble does not automatically restart Try to open Mumble from Start menu Nothing happens (In Task Manager, Mumble is listed under Background processes) End Task for Mumble in Task Manager Open Mumble from Start menu Mumble crashes (without opening any window) Send report -> Crash uploading error code 401 After clicking OK to crash uploading error, Mumble client opens automatically Language is changed.

Expected behavior After accepting to restart Mumble to change language, I expect the application to close, automatically restart and language changed.

Desktop (please complete the following information):

Krzmbrzl commented 3 years ago

Is this reproducible? I just tested this on Linux and there it seems that I can change the language while being connected to a server just fine.

If this is reproducible, could you check for Mumble's process ID (https://support.kaspersky.com/us/common/windows/6325) while it is running and then after it has closed, could you check the process ID of the "background service" that is still running and preventing you from opening a new Mumble instance? Are these IDs the same or do they differ?

woodkoodaa commented 3 years ago

The problem is reproducible.

Starting Mumble normally: PID 1728 After clicking Yes to restart Mumble (after changing language), it is shown in background processes: PID 2244 Opening Mumble from Start menu: nothing happens End Task in Task Manager Open via Start menu: PID 9032 After crash and (trying to) send crash report, client opening as it should: PID 9032

Krzmbrzl commented 3 years ago

Okay so to me it seems like Mumble terminates properly, but then hangs somewhere during startup.

Could you perhaps try uninstalling the snapshot and installing the latest stable release (1.3.4) instead to see if the problem exists there as well?

woodkoodaa commented 3 years ago

Tried these versions:

No problem: mumble-1.3.4.winx64.msi Mumble-1.4.0 2020-12-24 gdb4b6be snapshot.winx64.msi

Problem: Mumble-1.4.0 2021-02-23 g569336e snapshot.x64.msi Mumble-1.4.0 2021-03-20 gf8dc8b0 snapshot.x64.msi Mumble-1.4.0 2021-04-03 ge0d0056 snapshot.x64.msi

Krzmbrzl commented 3 years ago

Oh that is interesting. So the problematic change must have occurred between the release of the first and second development snapshot. In the respective changelog I can't find anything suspicious though :eyes:

Krzmbrzl commented 3 years ago

A user on our IRC channel was also able to reliably trigger this bug using Windows 7:

I was able to reproduce this multiple times. I installed Mumble-1.4.0\~2021-04-03\~ge0d0056~snapshot.x64 on an up-to-date Windows 7 computer. Followed the steps. Same results. I did notice in my testing that it will not crash if not connected to a server when changing the language. I tried 4 times with each (connected/disconnected), it always crashed when connected, never crashed when disconnected.

Thus this seems to be a general problem. I think eventually this needs to be bisected to figure out which commit is causing the issue. Alternatively someone more skilled with Windows development than me (e.g. @davidebeatrici ?) could attach a debugger to the application to figure out where it ends up hanging.

davidebeatrici commented 3 years ago

Cannot reproduce. What's the language you're trying to switch to?

woodkoodaa commented 3 years ago

I switched between "system default" which is english-us and suomi (fi) (finnish).

davidebeatrici commented 3 years ago

Unfortunately I still cannot reproduce the issue.

Krzmbrzl commented 3 years ago

@davidebeatrici are you using a self-compiled version or one of our released binaries directly?

davidebeatrici commented 3 years ago

I tested both.

Krzmbrzl commented 3 years ago

@davidebeatrici what is your system's language?

davidebeatrici commented 3 years ago

English (US).

Krzmbrzl commented 3 years ago

Okay so that's the same. Hm let me see if I can reproduce this issue in my VM...

Krzmbrzl commented 3 years ago

I am indeed able to reproduce it there. Now I only have to find the time to bisect the issue. I can't tell yet when that will happen though xD

davidebeatrici commented 3 years ago

Please note that I have UTF-8 support enabled:

Aside from that, I only have a few non-default locale settings:

woodkoodaa commented 3 years ago

Adding some information: Enabling beta UTF-8 support did not fix the problem. I have Display language "English (United States)", but regional format is "English (Finland)".

Here is copypaste from reliability and problem history, if it contains any useful information: Description Faulting Application Path: C:\Program Files\Mumble\client\mumble.exe

Problem signature Problem Event Name: APPCRASH Application Name: mumble.exe Application Version: 1.4.0.131 Application Timestamp: 6068672a Fault Module Name: mumble_app.dll Fault Module Version: 1.4.0.131 Fault Module Timestamp: 60686726 Exception Code: c0000005 Exception Offset: 0000000000d981fe OS Version: 10.0.19042.2.0.0.768.101 Locale ID: 8192 Additional Information 1: a179 Additional Information 2: a179b912a9291b7d3f1104a8ed7761e4 Additional Information 3: f854 Additional Information 4: f854543e20fe3be7f41cc27ffc02d4cd

Extra information about the problem Bucket ID: e020281455be2ea91543a07b8927fc41 (1532244750678621249)

ViBE-HU commented 2 years ago

i noticed similar issue. i have an old ThinkPad and installed Windows 10 a few months ago. it's an up to date system. first i tested with the stable 1.3.4 build. it runs without any issue. yesterday i removed it and started to test the latest snapshot and update the translation. but this build does not start. it crashes instantly. the system log says that the program crashes because of the opus.dll cause maybe it's a filesystem issue. but it's not. then i removed the opus.dll and now the program crashes because of the mumble_app.dll.

Krzmbrzl commented 2 years ago

@ViBE-HU I don't see how your issue is similar to the one described here :thinking:

In any case though it would be helpful if you could provide the actual crash message. Otherwise it will be hard to figure out what the issue is...

ViBE-HU commented 2 years ago

if it helps i can send the crashlogs via Mumble (if this feature works). here's a log event error code 1000 after i removed opus.dll:

A hibát okozó alkalmazás neve: mumble.exe, verzió: 1.4.0.191, időbélyeg: 0x60a164a5
A hibát okozó modul neve: mumble_app.dll, verzió: 1.4.0.191, időbélyeg: 0x60a1649f
Kivételkód: 0xc0000005
Hiba pozíciója: 0x0000000000e21d1e
A hibát okozó folyamat azonosítója: 0x2ec
A hibát okozó alkalmazás indításának időpontja: 0x01d788c1632c56de
A hibát okozó alkalmazás elérési útja: C:\Program Files\Mumble\client\mumble.exe
A hibát okozó modul elérési útja: C:\Program Files\Mumble\client\mumble_app.dll
Jelentés azonosítója: c991c997-0574-46ae-bf16-af472ca45f71
A hibát okozó csomag teljes neve: 
A hibát okozó csomag relatív alkalmazásazonosítója: 
Krzmbrzl commented 2 years ago

if this feature works

Unfortunately our backend for that is currently broken xD

That log you provided is the one after you have deleted opus.dll, isn't it? Could you give me the one with this DLL still present?

And if you don't have an argument for why this is in fact the same issue as the one originally described in this issue, I think it would be best if we moved our discussion into a separate issue. wdyt?

ViBE-HU commented 2 years ago

yeah, i remembered that i already tried and somehow it does nothing when i sent the report back in the days.

yes if it's not related i can open another issues. i just don't wanted to make duplicates. here's the opus.dll related Windows event log. first of all if that dll is present an event with error code 1005 created. it is a long log what describe that the filesystem maybe compromised and should check with CHKDSK. but it's totally irrelevant. then the other event 1000:

A hibát okozó alkalmazás neve: mumble.exe, verzió: 1.4.0.191, időbélyeg: 0x60a164a5
A hibát okozó modul neve: opus.dll, verzió: 0.0.0.0, időbélyeg: 0x60a16375
Kivételkód: 0xc000001d
Hiba pozíciója: 0x000000000001f350
A hibát okozó folyamat azonosítója: 0x17ec
A hibát okozó alkalmazás indításának időpontja: 0x01d789245c117909
A hibát okozó alkalmazás elérési útja: C:\Program Files\Mumble\client\mumble.exe
A hibát okozó modul elérési útja: C:\Program Files\Mumble\client\opus.dll
Jelentés azonosítója: ef84c957-293f-4e96-82b0-72ce94f17bb0
A hibát okozó csomag teljes neve: 
A hibát okozó csomag relatív alkalmazásazonosítója: 
Krzmbrzl commented 2 years ago

@ViBE-HU yes a separate issue would be good.

The error code 0xc000001d seems to be "Illegal instruction" meaning that your CPU does not support some instruction that seems to be used inside the Opus library :eyes:

Hartmnt commented 1 month ago

Probably related #6114 #6434