Author: stippi Date: 2010-03-04 10:51:50 +0100 (Thu, 04 Mar 2010) New Revision: 35756 Changeset: http://dev.haiku-os.org/changeset/35756/haiku Modified: haiku/trunk/src/add-ons/kernel/drivers/power/enhanced_speedstep/frequency.cpp Log: Check for division by zero. Modified: haiku/trunk/src/add-ons/kernel/drivers/power/enhanced_speedstep/frequency.cpp =================================================================== --- haiku/trunk/src/add-ons/kernel/drivers/power/enhanced_speedstep/frequency.cpp 2010-03-04 09:49:53 UTC (rev 35755) +++ haiku/trunk/src/add-ons/kernel/drivers/power/enhanced_speedstep/frequency.cpp 2010-03-04 09:51:50 UTC (rev 35756) @@ -144,13 +144,16 @@ int32 freq = info.cpu_clock_speed / 1000000; uint16 id = msr >> 32; - int32 bus = freq / (id >> 8); + int32 bus = 0; + if (id >> 8) + freq / (id >> 8); TRACE("est: Guessed bus clock (high) of %d MHz\n", int(bus)); if (!bus_speed_ok(bus)) { // We may be running on the low frequency. id = msr >> 48; - bus = freq / (id >> 8); + if (id >> 8) + bus = freq / (id >> 8); TRACE("est: Guessed bus clock (low) of %d MHz\n", int(bus)); if (!bus_speed_ok(bus)) return B_ERROR;