Module Name: src
Committed By: christos
Date: Sun Jun 19 04:23:18 UTC 2011
Modified Files:
src/sys/dev/sysmon: sysmon_envsys_tables.c
Log Message:
simplify and don't deref NULL.
To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/dev/sysmon/sysmon_envsys_tables.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/sysmon/sysmon_envsys_tables.c
diff -u src/sys/dev/sysmon/sysmon_envsys_tables.c:1.7 src/sys/dev/sysmon/sysmon_envsys_tables.c:1.8
--- src/sys/dev/sysmon/sysmon_envsys_tables.c:1.7 Sat Jun 18 23:09:43 2011
+++ src/sys/dev/sysmon/sysmon_envsys_tables.c Sun Jun 19 00:23:18 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: sysmon_envsys_tables.c,v 1.7 2011/06/19 03:09:43 pgoyette Exp $ */
+/* $NetBSD: sysmon_envsys_tables.c,v 1.8 2011/06/19 04:23:18 christos Exp $ */
/*-
* Copyright (c) 2007 Juan Romero Pardines.
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sysmon_envsys_tables.c,v 1.7 2011/06/19 03:09:43 pgoyette Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sysmon_envsys_tables.c,v 1.8 2011/06/19 04:23:18 christos Exp $");
#include <sys/types.h>
@@ -100,58 +100,51 @@
{ -1, -1, "UNKNOWN" }
};
-/*
- * Returns the entry from specified table with type == key
- */
-const struct sme_descr_entry *
-sme_find_table_entry(enum sme_descr_type table_id, int key)
+static const struct sme_desc_entry *
+sme_find_table(enum sme_descr_type table_id)
{
- const struct sme_descr_entry *table = NULL;
-
switch (table_id) {
case SME_DESC_UNITS:
- table = sme_units_description;
+ return sme_units_description;
break;
case SME_DESC_STATES:
- table = sme_state_description;
+ return sme_state_description;
break;
case SME_DESC_DRIVE_STATES:
- table = sme_drivestate_description;
+ return sme_drivestate_description;
break;
case SME_DESC_BATTERY_CAPACITY:
- table = sme_batterycap_description;
+ return sme_batterycap_description;
break;
+ default:
+ return NULL;
}
+}
+
+/*
+ * Returns the entry from specified table with type == key
+ */
+const struct sme_descr_entry *
+sme_find_table_entry(enum sme_descr_type table_id, int key)
+{
+ const struct sme_descr_entry *table = sme_find_table();
- for (; table->type != -1; table++)
- if (table->type == key)
- break;
+ if (table != NULL)
+ for (; table->type != -1; table++)
+ if (table->type == key)
+ return table;
- return table;
+ return NULL;
}
+
const struct sme_descr_entry *
sme_find_table_desc(enum sme_descr_type table_id, const char *str)
{
- const struct sme_descr_entry *table = NULL;
+ const struct sme_descr_entry *table = sme_find_table();
- switch (table_id) {
- case SME_DESC_UNITS:
- table = sme_units_description;
- break;
- case SME_DESC_STATES:
- table = sme_state_description;
- break;
- case SME_DESC_DRIVE_STATES:
- table = sme_drivestate_description;
- break;
- case SME_DESC_BATTERY_CAPACITY:
- table = sme_batterycap_description;
- break;
- }
-
- for (; table->type != -1; table++)
- if (strcmp(table->desc, str) == 0)
- break;
- return table;
+ if (table != NULL)
+ for (; table->type != -1; table++)
+ if (strcmp(table->desc, str) == 0)
+ return table;
+ return NULL;
}
-