diff options
| author | Andrew Goodbody <[email protected]> | 2025-09-01 16:00:46 +0100 |
|---|---|---|
| committer | Peng Fan <[email protected]> | 2025-09-25 00:04:02 +0800 |
| commit | 6c98e6014b3a36933860d02cb757565ec2fc80a4 (patch) | |
| tree | bc87b47d5b3dee9f0b6bb93ba8d6cca70dcc32e6 /drivers/power | |
| parent | e482fdbbca935de32400054eb532de45b1cc01cb (diff) | |
power: regulator: Fix incorrect use of binary and
In regulator_list_autoset there is a test for ret being non-zero and
error being zero but it uses the binary '&' instead of the logical '&&'
which could well lead to unexpected results. Correct this to use the
logical '&&' instead.
This issue found by Smatch.
Signed-off-by: Andrew Goodbody <[email protected]>
Reviewed-by: Peng Fan <[email protected]>
Signed-off-by: Peng Fan <[email protected]>
Diffstat (limited to 'drivers/power')
| -rw-r--r-- | drivers/power/regulator/regulator-uclass.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/power/regulator/regulator-uclass.c b/drivers/power/regulator/regulator-uclass.c index 2a59a1b79c2..94c52cf555b 100644 --- a/drivers/power/regulator/regulator-uclass.c +++ b/drivers/power/regulator/regulator-uclass.c @@ -389,7 +389,7 @@ int regulator_list_autoset(const char *list_platname[], ret = regulator_autoset_by_name(list_platname[i], &dev); if (ret != -EMEDIUMTYPE && verbose) regulator_show(dev, ret); - if (ret & !error) + if (ret && ret != -EALREADY && !error) error = ret; if (list_devp) |
