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

[xinput] Remove use of private APIs on Windows 8/10 #79

Merged
merged 1 commit into from
Jan 29, 2017

Conversation

garbear
Copy link
Member

@garbear garbear commented Jan 29, 2017

The crash on Windows 10:

INVALID_POINTER_READ_DETOURS_c0000005_XInputUap.dll!XInputCore::XInputManager::_XInputManager

This might be caused by the private API used to access the Guide button and Power-off feature. This PR disables these on Windows 10.

I can't compile on Windows ATM so this PR is untested.

@Montellese
Copy link
Member

Looks like M$ made quite a mess with the XInput versions and what features they provide... I didn't realize that when I implemented these advanced features.

@Paxxi
Copy link
Member

Paxxi commented Jan 29, 2017

Well, can't expect a stable interface if we're using internal methods. Seems they failed with the design of the API though if we need to resort to such trickery.

Would like to see this in ASAP as this crash is in the top 5 or even top 3 in the win store crashes

@Montellese
Copy link
Member

@Paxxi: From what I read they're not explicitly internal but they are only available with XInput 1.3 which only comes with the DirectX SDK (which is why it's available on developer machines).
And it looks like for Windows store apps only XInput 1.4 is supported. And the docs even say that XInput 1.4 has several disadvantages over XInput 1.3 or XInput 9.1.0.

To me that looks like quite a mess.

@garbear
Copy link
Member Author

garbear commented Jan 29, 2017

Do you think they are the problem? This PR is a little hacky, but we can fix later. I've compile tested on Windows so I'm going to merge this.

@garbear garbear merged commit 8295a42 into xbmc:master Jan 29, 2017
@Paxxi
Copy link
Member

Paxxi commented Jan 29, 2017

@Montellese no arguments about it being a mess 😀

@garbear garbear deleted the xinput-1.4 branch January 29, 2017 12:49
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

Successfully merging this pull request may close these issues.

None yet

3 participants