Browse Source

Added some checks on index values in AudioProcessor

tags/2021-05-28
Tom Poole 7 years ago
parent
commit
fd73d77484
1 changed files with 7 additions and 4 deletions
  1. +7
    -4
      modules/juce_audio_processors/processors/juce_AudioProcessor.cpp

+ 7
- 4
modules/juce_audio_processors/processors/juce_AudioProcessor.cpp View File

@@ -432,7 +432,7 @@ void AudioProcessor::setParameterNotifyingHost (int parameterIndex, float newVal
{
param->setValueNotifyingHost (newValue);
}
else
else if (isPositiveAndBelow (parameterIndex, getNumParameters()))
{
setParameter (parameterIndex, newValue);
sendParamChangeMessageToListeners (parameterIndex, newValue);
@@ -522,7 +522,8 @@ String AudioProcessor::getParameterName (int index, int maximumStringLength)
if (auto* p = managedParameters[index])
return p->getName (maximumStringLength);
return getParameterName (index).substring (0, maximumStringLength);
return isPositiveAndBelow (index, getNumParameters()) ? getParameterName (index).substring (0, maximumStringLength)
: String();
}
const String AudioProcessor::getParameterText (int index)
@@ -534,7 +535,8 @@ const String AudioProcessor::getParameterText (int index)
ScopedValueSetter<bool> sv (textRecursionCheck, true, false);
#endif
return getParameterText (index, 1024);
return isPositiveAndBelow (index, getNumParameters()) ? getParameterText (index, 1024)
: String();
}
String AudioProcessor::getParameterText (int index, int maximumStringLength)
@@ -542,7 +544,8 @@ String AudioProcessor::getParameterText (int index, int maximumStringLength)
if (auto* p = managedParameters[index])
return p->getText (p->getValue(), maximumStringLength);
return getParameterText (index).substring (0, maximumStringLength);
return isPositiveAndBelow (index, getNumParameters()) ? getParameterText (index).substring (0, maximumStringLength)
: String();
}
#if JUCE_GCC


Loading…
Cancel
Save