[haiku-commits] r41343 - haiku/trunk/src/apps/powerstatus

  • From: kallisti5@xxxxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 6 May 2011 18:52:26 +0200 (CEST)

Author: kallisti5
Date: 2011-05-06 18:52:26 +0200 (Fri, 06 May 2011)
New Revision: 41343
Changeset: https://dev.haiku-os.org/changeset/41343

Modified:
   haiku/trunk/src/apps/powerstatus/ExtendedInfoWindow.cpp
Log:
add (slightly overly) cautious checks of battery info to avoid NULL segfault... 
acpi can be flakey at times

Modified: haiku/trunk/src/apps/powerstatus/ExtendedInfoWindow.cpp
===================================================================
--- haiku/trunk/src/apps/powerstatus/ExtendedInfoWindow.cpp     2011-05-06 
16:29:49 UTC (rev 41342)
+++ haiku/trunk/src/apps/powerstatus/ExtendedInfoWindow.cpp     2011-05-06 
16:52:26 UTC (rev 41343)
@@ -137,10 +137,14 @@
        else if (fBatteryInfo.state & BATTERY_DISCHARGING)
                fontString->string = B_TRANSLATE("Battery discharging");
        else if (fBatteryInfo.state & BATTERY_CRITICAL_STATE
-               && !strcmp(fBatteryExtendedInfo.model_number, "")
-               && !strcmp(fBatteryExtendedInfo.serial_number, "")
-               && !strcmp(fBatteryExtendedInfo.type, "")
-               && !strcmp(fBatteryExtendedInfo.oem_info, ""))
+               && (!fBatteryExtendedInfo.model_number
+                       || !strlen(fBatteryExtendedInfo.model_number))
+               && (!fBatteryExtendedInfo.serial_number
+                       || !strlen(fBatteryExtendedInfo.serial_number))
+               && (!fBatteryExtendedInfo.type
+                       || !strlen(fBatteryExtendedInfo.type))
+               && (!fBatteryExtendedInfo.oem_info
+                       || !strlen(fBatteryExtendedInfo.oem_info)))
                fontString->string = B_TRANSLATE("Empty battery slot");
        else if (fBatteryInfo.state & BATTERY_CRITICAL_STATE)
                fontString->string = B_TRANSLATE("Damaged battery");


Other related posts: