Game User settings dont save

I created a simple blueprint library in C++ so I can access the functions of UGameUserSettings in blueprint.
Setting resolution works however nothing gets saved after the initial creation of the ini.
I created a quick test setup to call try change resolution then confirm the resolution when another button is pressed.

18052-capture.jpg

The problem is, Confirm video mode doesnt save it to the ini. I tried using UpdateVersion() but its protected. Not sure what im doing wrong. Here is an example of one of my functions in my BL library. They all call functions from [UGameUserSettings][2] reference.

void UTestBPLibrary::ConfirmVideoMode()
{
    	UGameUserSettings* userSettings = UTestBPLibrary::GetUserSettings();
    	userSettings->ConfirmVideoMode();
}

Like I said the only time it saves the resolution setting is when its first launched with an empty config. Get user settings looks something like this:

UGameUserSettings* UTestBPLibrary::GetUserSettings()
{
    	return GEngine->GetGameUserSettings();
}

I may have found a solution. Im not sure what the purpose of request resolution change vs setscreenresolution is but when i change my setup to this:

It seems to save. I still have to see if it was just a fluke or if this is the way to do it.

Note I should have SetResolution function before ConfirmVideoMode

Using SetScreenResolution seems to fix the problem

I have exactly the same issue, when I call SaveSettings() the .ini file is empty afterwards. Have you managed to solve that issue (in UE4.8)?

Okay so just bumping up this thread. The good thing is that now there is blueprint function to do just that. Quite a lot of functions actually the only thing is that it just doesn’t save. I tried this in a shipping build and it never seemed to remember that V-Sync was disabled (default enabled). Linked a picture of the blueprint setup. Is there an extra step I need to do ?