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

[Bug]: When executing PapyrusUtil's JsonUtil.GetStringValue function, a CTD occurs if an empty character is passed as the third argument. #1858

Open
oto-git opened this issue Feb 20, 2024 · 0 comments
Assignees

Comments

@oto-git
Copy link

oto-git commented Feb 20, 2024

Severity

Critical. A critical defect that causes some key functionality to fail.

Priority

High. Anything that impacts the typical user flow or blocks app usage.

Description

I tried calling PapyrusUtil's JsonUtil.GetStringValue function on the SkyrimPlatform side using Papyrus-2-Typescript,
I confirmed that passing an empty string as the 3rd argument causes a CTD.

NetScriptFramework crash log: https://drive.google.com/file/d/1XN70qo_fh6rhPPBU-r7EPtaOSidDewTR/view?usp=sharing

Confirmed that the CTD does not occur when the SkyrimPlatform is version 2.5.
Confirmed that the CTD occurs from version 2.6 (also confirmed that it occurs in version 2.8)

On the papyrus side, running with an empty third argument did not cause any problems.

#1661
Highly relevant bug. This is PapyrusUtil's MiscUtil function, which also generated a CTD when an empty character was specified.
This bug also did not occur in 2.5 but started to occur in version 2.6.

OS

Windows

OS version

10

Skyrim version

1.5.97

SKSE version

2.0.20

client commit''s hash

None

server commit''s hash

None

Videocard model

GeForce GTX 1070 Ti

Steps to reproduce


import * as JsonUtil from "../../../Modules/PapyrusUtil/JsonUtil"
once('update', () => {
	let loadFile = "Test.json";
	let test = JsonUtil.GetStringValue(loadFile, 'key1', '');
	printConsole('testJSON:' + test);
});

Assign an empty string to the third argument of JsonUtil.GetStringValue as above and execute.

Expected result

The message 'testJSON:~' appears in the console.

Actual result

CTD occurs during function execution

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants