[PATCH] acpi: method: use a helper function for MethodReturnNullObj errors
Colin King
colin.king at canonical.com
Tue Jan 8 18:11:17 UTC 2013
From: Colin Ian King <colin.king at canonical.com>
Add and use a helper function for conditions where a null object
is returned.
Signed-off-by: Colin Ian King <colin.king at canonical.com>
---
src/acpi/method/method.c | 45 ++++++++++++++++++++++++++-------------------
1 file changed, 26 insertions(+), 19 deletions(-)
diff --git a/src/acpi/method/method.c b/src/acpi/method/method.c
index 371fcb5..2014755 100644
--- a/src/acpi/method/method.c
+++ b/src/acpi/method/method.c
@@ -298,6 +298,20 @@ static void method_passed_sane_uint64(
}
/*
+ * method_failed_null_return()
+ * helper function to report often used failed NULL object return
+ */
+static void method_failed_null_object(
+ fwts_framework *fw,
+ const char *name,
+ const char *type)
+{
+ fwts_failed(fw, LOG_LEVEL_MEDIUM, "MethodReturnNullObj",
+ "%s returned a NULL object, and did not "
+ "return %s.", name, type);
+}
+
+/*
* method_init()
* initialize ACPI
*/
@@ -518,10 +532,8 @@ static int method_check_type__(
{
ACPI_OBJECT *obj;
- if ((buf == NULL) || (buf->Pointer == NULL)){
- fwts_failed(fw, LOG_LEVEL_MEDIUM, "MethodReturnNullObj",
- "Method %s returned a NULL object, and did not "
- "return %s.", name, type_name);
+ if ((buf == NULL) || (buf->Pointer == NULL)) {
+ method_failed_null_object(fw, name, type_name);
return FWTS_ERROR;
}
@@ -762,11 +774,10 @@ static void method_test_HID_return(
FWTS_UNUSED(private);
if (obj == NULL) {
- fwts_failed(fw, LOG_LEVEL_MEDIUM, "MethodReturnNullObj",
- "Method %s returned a NULL object, and did not "
- "return a buffer or integer.", name);
+ method_failed_null_object(fw, name, "a buffer or integer");
return;
}
+
switch (obj->Type) {
case ACPI_TYPE_STRING:
if (obj->String.Pointer) {
@@ -873,11 +884,10 @@ static void method_test_SUB_return(
FWTS_UNUSED(private);
if (obj == NULL) {
- fwts_failed(fw, LOG_LEVEL_MEDIUM, "MethodReturnNullObj",
- "Method %s returned a NULL object, and did not "
- "return a buffer or integer.", name);
+ method_failed_null_object(fw, name, "a buffer or integer");
return;
}
+
if (obj->Type == ACPI_TYPE_STRING)
if (obj->String.Pointer) {
if (method_valid_HID_string(obj->String.Pointer))
@@ -928,12 +938,11 @@ static void method_test_UID_return(
FWTS_UNUSED(buf);
FWTS_UNUSED(private);
- if (obj == NULL){
- fwts_failed(fw, LOG_LEVEL_MEDIUM, "MethodReturnNullObj",
- "%s returned a NULL object, and did not "
- "return a buffer or integer.", name);
+ if (obj == NULL) {
+ method_failed_null_object(fw, name, "a buffer or integer");
return;
}
+
switch (obj->Type) {
case ACPI_TYPE_STRING:
if (obj->String.Pointer)
@@ -4618,13 +4627,11 @@ static void method_test_DDC_return(
FWTS_UNUSED(buf);
- if (obj == NULL){
- fwts_failed(fw, LOG_LEVEL_MEDIUM,
- "MethodReturnNullObj",
- "Method %s returned a NULL object, and did not "
- "return a buffer or integer.", name);
+ if (obj == NULL) {
+ method_failed_null_object(fw, name, "a buffer or integer");
return;
}
+
switch (obj->Type) {
case ACPI_TYPE_BUFFER:
if (requested != obj->Buffer.Length) {
--
1.8.0
More information about the fwts-devel
mailing list