Commit bfaecf46 authored by qinyu's avatar qinyu Committed by Sebastian Reichel
Browse files

power: supply: fix null pointer check order in __power_supply_register



There is an null pointer check order issue here: if we have to
check !desc and !desc->name anyway, check it before dereferencing it in
pr_warn().

Signed-off-by: default avatarqinyu <qinyu32@huawei.com>
Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
parent c142872e
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1207,13 +1207,13 @@ __power_supply_register(struct device *parent,
	struct power_supply *psy;
	int rc;

	if (!desc || !desc->name || !desc->properties || !desc->num_properties)
		return ERR_PTR(-EINVAL);

	if (!parent)
		pr_warn("%s: Expected proper parent device for '%s'\n",
			__func__, desc->name);

	if (!desc || !desc->name || !desc->properties || !desc->num_properties)
		return ERR_PTR(-EINVAL);

	if (psy_has_property(desc, POWER_SUPPLY_PROP_USB_TYPE) &&
	    (!desc->usb_types || !desc->num_usb_types))
		return ERR_PTR(-EINVAL);