ScreenSaverSettings: Check that name is valid

... before trying to use it in GetModuleState() and SetModuleState()

also, rename the stateMsg variable to stateMessage (already correct in header)
This commit is contained in:
John Scipione
2014-02-25 15:00:12 -05:00
parent 94f8ac8cf1
commit 9d312ae750
+12 -6
View File
@@ -172,21 +172,27 @@ ScreenSaverSettings::Message()
status_t
ScreenSaverSettings::GetModuleState(const char* name, BMessage* stateMsg)
ScreenSaverSettings::GetModuleState(const char* name, BMessage* stateMessage)
{
if (name == NULL || *name == '\0')
return B_BAD_VALUE;
BString stateName("modulesettings_");
stateName += name;
return fSettings.FindMessage(stateName.String(), stateMsg);
stateName << name;
return fSettings.FindMessage(stateName, stateMessage);
}
void
ScreenSaverSettings::SetModuleState(const char* name, BMessage* stateMsg)
ScreenSaverSettings::SetModuleState(const char* name, BMessage* stateMessage)
{
if (name == NULL || *name == '\0')
return;
BString stateName("modulesettings_");
stateName += name;
stateName << name;
fSettings.RemoveName(stateName.String());
fSettings.AddMessage(stateName.String(), stateMsg);
fSettings.AddMessage(stateName.String(), stateMessage);
}