]> Kevux Git Server - koopa/commitdiff
Bugfix: inconsistency in c_base_error's s_false() and s_true() NULL value handling
authorKevin Day <thekevinday@gmail.com>
Sat, 3 Feb 2018 18:39:13 +0000 (12:39 -0600)
committerKevin Day <thekevinday@gmail.com>
Sat, 3 Feb 2018 18:39:13 +0000 (12:39 -0600)
The comments designate that when NULL is specified, no error should be assigned.
The previous behavior was instead creating a new, empty error.

The error classes also seem to accept NULL values, which will create an empty error array (clearing existing values).
By passing NULL instead of creating an error object makes the behavior consistent with other code.

common/base/classes/base_return.php

index 6008dfa29747f4537eaa1b6f41963d3f9327324a..2ea386fc24848a15bf9e3312dad0da8c0fa96bf1 100644 (file)
@@ -1810,9 +1810,7 @@ class c_base_return_error {
     $object_return = new c_base_return_true();
 
     if (is_null($error)) {
-      $object_error = new c_base_error();
-      $object_return->set_error($object_error);
-      unset($object_error);
+      $object_return->set_error(NULL);
     }
     elseif (is_array($error)) {
       foreach ($error as $delta => $value) {
@@ -1843,9 +1841,7 @@ class c_base_return_error {
     $object_return = new c_base_return_false();
 
     if (is_null($error)) {
-      $object_error = new c_base_error();
-      $object_return->set_error($object_error);
-      unset($object_error);
+      $object_return->set_error(null);
     }
     elseif (is_array($error)) {
       foreach ($error as $delta => $value) {