tree fd80a0eda7729b279865489b78f71fb05c0a9953
parent f0eba5167bb0010a0a83c0868acf593de762362a
author Janani Ravichandran <janani.rvchndrn@gmail.com> 1455836213 -0500
committer Greg Kroah-Hartman <gregkh@linuxfoundation.org> 1456009451 -0800

staging: rtl8723au: Remove unnecessary else following return

Remove unnecessary else when there is a return statement in the
corresponding if block.
Coccinelle patch used:

@rule1@
expression e1;
@@

	if (e1) { ... return ...; }
-       else{
	        ...
-            }

@rule2@
expression e2;
statement s1;
@@

	if(e2) { ... return ...; }
-       else
		s1

Signed-off-by: Janani Ravichandran <janani.rvchndrn@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
