CPUFreq: rewrite interpolation formula - division by zero (#9872)

This commit is contained in:
Philippe Saint-Pierre
2013-07-18 22:27:27 -04:00
parent 2fab6ab728
commit 0e95ac1797
+6 -11
View File
@@ -162,11 +162,10 @@ ColorStepView::Draw(BRect updateRect)
pos = nextPos; pos = nextPos;
} }
// draw label // draw label
if (IsEnabled()) { if (IsEnabled())
view->SetHighColor(0, 0, 0); view->SetHighColor(0, 0, 0);
} else { else
view->SetHighColor(tint_color(LowColor(), B_DISABLED_LABEL_TINT)); view->SetHighColor(tint_color(LowColor(), B_DISABLED_LABEL_TINT));
}
font_height fontHeight; font_height fontHeight;
GetFontHeight(&fontHeight); GetFontHeight(&fontHeight);
@@ -234,8 +233,7 @@ ColorStepView::SetFrequencys(StateList *list)
if (perfNumber < fNSteps) { if (perfNumber < fNSteps) {
for (int i = 0; i < fNSteps - perfNumber; i++) for (int i = 0; i < fNSteps - perfNumber; i++)
fPerformanceList->AddItem(new performance_step); fPerformanceList->AddItem(new performance_step);
} } else {
else {
for (int i = 0; i < perfNumber - fNSteps; i++) for (int i = 0; i < perfNumber - fNSteps; i++)
fPerformanceList->RemoveItemAt(0); fPerformanceList->RemoveItemAt(0);
} }
@@ -326,13 +324,10 @@ void
ColorStepView::_ColorStep(int32 step, rgb_color &color) ColorStepView::_ColorStep(int32 step, rgb_color &color)
{ {
color.red = fLowFreqColor.red color.red = fLowFreqColor.red
+ (fHighFreqColor.red - fLowFreqColor.red) + (fHighFreqColor.red - fLowFreqColor.red) * step / (fNSteps - 1);
/ (fNSteps - 1) * step;
color.green = fLowFreqColor.green color.green = fLowFreqColor.green
+ (fHighFreqColor.green - fLowFreqColor.green) + (fHighFreqColor.green - fLowFreqColor.green) * step / (fNSteps - 1);
/ (fNSteps - 1) * step;
color.blue = fLowFreqColor.blue color.blue = fLowFreqColor.blue
+ (fHighFreqColor.blue - fLowFreqColor.blue) + (fHighFreqColor.blue - fLowFreqColor.blue) * step / (fNSteps - 1);
/ (fNSteps - 1) * step;
} }