Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 93f56de2 authored by Matthias Kaehlcke's avatar Matthias Kaehlcke Committed by Johannes Berg
Browse files

mac80211: Fix clang warning about constant operand in logical operation



When clang detects a non-boolean constant in a logical operation it
generates a 'constant-logical-operand' warning. In
ieee80211_try_rate_control_ops_get() the result of strlen(<const str>)
is used in a logical operation, clang resolves the expression to an
(integer) constant at compile time when clang's builtin strlen function
is used.

Change the condition to check for strlen() > 0 to make the constant
operand boolean and thus avoid the warning.

Signed-off-by: default avatarMatthias Kaehlcke <mka@chromium.org>
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent a339e4c2
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -174,9 +174,11 @@ ieee80211_rate_control_ops_get(const char *name)
		/* try default if specific alg requested but not found */
		ops = ieee80211_try_rate_control_ops_get(ieee80211_default_rc_algo);

	/* Note: check for > 0 is intentional to avoid clang warning */
	if (!ops && (strlen(CONFIG_MAC80211_RC_DEFAULT) > 0))
		/* try built-in one if specific alg requested but not found */
	if (!ops && strlen(CONFIG_MAC80211_RC_DEFAULT))
		ops = ieee80211_try_rate_control_ops_get(CONFIG_MAC80211_RC_DEFAULT);

	kernel_param_unlock(THIS_MODULE);

	return ops;