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

Unicode username causing OBS won't launch in normal mode #1244

Open
Enderwonder opened this issue Aug 8, 2024 · 2 comments
Open

Unicode username causing OBS won't launch in normal mode #1244

Enderwonder opened this issue Aug 8, 2024 · 2 comments

Comments

@Enderwonder
Copy link

Operating System Info

Windows 11

Other OS

No response

OBS Studio Version

30.2.2

OBS Studio Version (Other)

No response

OBS Studio Log URL

https://obsproject.com/forum/attachments/2024-08-03-21-42-24-txt.106458/

OBS Studio Crash Log URL

https://obsproject.com/forum/attachments/crash-2024-08-07-21-51-42-txt.106680/

Expected Behavior

Should start normally.

Current Behavior

only launch in safe mode

Thread 55E4: (Crashed)
Stack EIP Arg0 Arg1 Arg2 Arg3 Address
00000076785BDF30 00007FFFDEFDFABC 00000076785BE090 00000204F2BCABA0 00000204F2CF02C0 00000204F2DAC801 kernelbase.dll!0x7fffdefdfabc
00000076785BE010 00007FFFC3B15267 0000000000000000 00000076785BE378 00000076785BE2C8 0000000000000055 vcruntime140.dll!0x7fffc3b15267
00000076785BE070 00007FFF04FC42F8 0000000000000459 00007FFFDEB4A838 0000020400000459 0000000000000000 obs-websocket.dll!0x7fff04fc42f8
00000076785BE0F0 00007FFF04FC445E 00000076785BE2C8 00000076785BE360 00000076785BE260 0000000000000070 obs-websocket.dll!0x7fff04fc445e
00000076785BE160 00007FFF0506B478 00000076785BE360 0000000000000000 00000076785BE360 00000076785BE3A9 obs-websocket.dll!0x7fff0506b478
00000076785BE340 00007FFF04FC5BEA 00000204F2CF0C80 00000204F2CF0C80 00000204F2D8F660 00000076785BE5A0 obs-websocket.dll!0x7fff04fc5bea
00000076785BE410 00007FFF04FC54F4 00000076785BE5A0 00000076785BE8B0 00000204F2D8F660 00000000FFFFFFFF obs-websocket.dll!0x7fff04fc54f4
00000076785BE550 00007FFF04FD1014 00000204F2BB8B80 0000000053B57BF7 00000204F2BB8B80 0000000000000001 obs-websocket.dll!0x7fff04fd1014
00000076785BE6F0 00007FFF1F8067F2 0000000000000000 0000000000000000 00000204ED891F60 0000000000000BD8 obs.dll!obs_init_module+0x52

Steps to Reproduce

start up OBS in unicode username path

Anything else we should know?

websocket plugins doesn't work in 30.2.2

@SuslikV
Copy link

SuslikV commented Nov 13, 2024

re-implementation of the "SetJsonFileContent" routine:
bdf812d
42e7eb6
eliminated the UTF8 path handling on file saving that previously was done inside the "Utils::Platform::SetTextFileContent" (there UTF8 handling was based on Qt implementation of QString).

meanwhile, migration:
af31f1a
eliminated the OS dependent UTF8 path handling in "Config::Save()" that previously was done through the call: "config_save" -> "os_fopen" -> "os_utf8_to_wcs_ptr" -> "os_wfopen" and similar routines on Windows. Now it uses mentioned above re-implementation of the "SetJsonFileContent" that calls for "GetModuleConfigPath" to get the path string, that itself uses "obs_module_config_path" with proper slash ending but no UTF8 handling of the final string for Windows (at least, I didn't found where the conversion happens).

The "Config::Save()" called right after the password generated at first load of the plugin:


thus, in the regular log of OBS the last message before the crash is:
21:42:26.838: [obs-websocket] [Config::Load] (FirstLoad) Generating new server password.


In my opinion, the Qt route in conversion of the UTF8 path can be returned back until proper solution will be found.


@Enderwonder can you provide what "Unicode username path" causes the crash? So, the developers be able to reproduce the issue.

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

No branches or pull requests

2 participants