efi_selftest: correct SetVariable() test

Errors should not only be announced as text but should also result in
EFI_ST_FAILURE being returned.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
diff --git a/lib/efi_selftest/efi_selftest_variables.c b/lib/efi_selftest/efi_selftest_variables.c
index a6b41d1..02c9d30 100644
--- a/lib/efi_selftest/efi_selftest_variables.c
+++ b/lib/efi_selftest/efi_selftest_variables.c
@@ -120,27 +120,29 @@
 				    7, v + 8);
 	if (ret != EFI_SUCCESS) {
 		efi_st_error("SetVariable(APPEND_WRITE) failed\n");
-	} else {
-		len = EFI_ST_MAX_DATA_SIZE;
-		ret = runtime->get_variable(L"efi_st_var1", &guid_vendor1,
-					    &attr, &len, data);
-		if (ret != EFI_SUCCESS) {
-			efi_st_error("GetVariable failed\n");
-			return EFI_ST_FAILURE;
-		}
-		if (len != 15)
-			efi_st_todo("GetVariable returned wrong length %u\n",
-				    (unsigned int)len);
-		if (memcmp(data, v, len))
-			efi_st_todo("GetVariable returned wrong value\n");
+		return EFI_ST_FAILURE;
 	}
+	len = EFI_ST_MAX_DATA_SIZE;
+	ret = runtime->get_variable(L"efi_st_var1", &guid_vendor1,
+				    &attr, &len, data);
+	if (ret != EFI_SUCCESS) {
+		efi_st_error("GetVariable failed\n");
+		return EFI_ST_FAILURE;
+	}
+	if (len != 15)
+		efi_st_todo("GetVariable returned wrong length %u\n",
+			    (unsigned int)len);
+	if (memcmp(data, v, len))
+		efi_st_todo("GetVariable returned wrong value\n");
 	/* Append variable 2 */
 	ret = runtime->set_variable(L"efi_none", &guid_vendor1,
 				    EFI_VARIABLE_BOOTSERVICE_ACCESS |
 				    EFI_VARIABLE_APPEND_WRITE,
 				    15, v);
-	if (ret != EFI_NOT_FOUND)
+	if (ret != EFI_NOT_FOUND) {
 		efi_st_error("SetVariable(APPEND_WRITE) with size 0 to non-existent variable returns wrong code\n");
+		return EFI_ST_FAILURE;
+	}
 	/* Append variable 3 */
 	ret = runtime->set_variable(L"PlatformLangCodes", &guid_global,
 				    EFI_VARIABLE_BOOTSERVICE_ACCESS |