Check for success of registry operations in wxJoystick code
Avoid reading wrong registry keys of REGSTR_VAL_JOYOEMNAME is not available. Closes https://github.com/wxWidgets/wxWidgets/pull/938
This commit is contained in:
committed by
Vadim Zeitlin
parent
81ef669c6d
commit
8a2dd7f18e
@@ -332,13 +332,22 @@ wxString wxJoystick::GetProductName() const
|
||||
wxRegKey key1(wxString::Format(wxT("HKEY_LOCAL_MACHINE\\%s\\%s\\%s"),
|
||||
REGSTR_PATH_JOYCONFIG, joyCaps.szRegKey, REGSTR_KEY_JOYCURR));
|
||||
|
||||
key1.QueryValue(wxString::Format(wxT("Joystick%d%s"),
|
||||
m_joystick + 1, REGSTR_VAL_JOYOEMNAME),
|
||||
str);
|
||||
if ( key1.Exists() )
|
||||
{
|
||||
key1.QueryValue(wxString::Format(wxT("Joystick%d%s"),
|
||||
m_joystick + 1, REGSTR_VAL_JOYOEMNAME),
|
||||
str);
|
||||
}
|
||||
|
||||
wxRegKey key2(wxString::Format(wxT("HKEY_LOCAL_MACHINE\\%s\\%s"),
|
||||
REGSTR_PATH_JOYOEM, str.c_str()));
|
||||
key2.QueryValue(REGSTR_VAL_JOYOEMNAME, str);
|
||||
if ( !str.empty() )
|
||||
{
|
||||
wxRegKey key2(wxString::Format(wxT("HKEY_LOCAL_MACHINE\\%s\\%s"),
|
||||
REGSTR_PATH_JOYOEM, str.c_str()));
|
||||
if ( key2.Exists() )
|
||||
{
|
||||
key2.QueryValue(REGSTR_VAL_JOYOEMNAME, str);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
return str;
|
||||
}
|
||||
|
Reference in New Issue
Block a user