Commit 024352ff authored by Masahiro Yamada's avatar Masahiro Yamada
Browse files

kconfig: move prompt handling to menu_add_prompt() from menu_add_prop()



menu_add_prompt() is the only function that calls menu_add_prop() with
non-NULL prompt.

So, the code inside the if-conditional block of menu_add_prop() can be
moved to menu_add_prompt().

Signed-off-by: default avatarMasahiro Yamada <masahiroy@kernel.org>
parent 1be6e791
Loading
Loading
Loading
Loading
+34 −36
Original line number Diff line number Diff line
@@ -132,7 +132,14 @@ static struct property *menu_add_prop(enum prop_type type, char *prompt, struct
	prop->expr = expr;
	prop->visible.expr = dep;

	if (prompt) {
	return prop;
}

struct property *menu_add_prompt(enum prop_type type, char *prompt,
				 struct expr *dep)
{
	struct property *prop = menu_add_prop(type, prompt, NULL, dep);

	if (isspace(*prompt)) {
		prop_warn(prop, "leading whitespace ignored");
		while (isspace(*prompt))
@@ -151,34 +158,25 @@ static struct property *menu_add_prop(enum prop_type type, char *prompt, struct
			if (!menu->visibility)
				continue;
			/*
				 * Do not add a reference to the
				 * menu's visibility expression but
				 * use a copy of it.  Otherwise the
				 * expression reduction functions
				 * will modify expressions that have
				 * multiple references which can
				 * cause unwanted side effects.
			 * Do not add a reference to the menu's visibility
			 * expression but use a copy of it. Otherwise the
			 * expression reduction functions will modify
			 * expressions that have multiple references which
			 * can cause unwanted side effects.
			 */
			dup_expr = expr_copy(menu->visibility);

				prop->visible.expr
					= expr_alloc_and(prop->visible.expr,
			prop->visible.expr = expr_alloc_and(prop->visible.expr,
							    dup_expr);
		}
	}

	current_entry->prompt = prop;
	}
	prop->text = prompt;

	return prop;
}

struct property *menu_add_prompt(enum prop_type type, char *prompt, struct expr *dep)
{
	return menu_add_prop(type, prompt, NULL, dep);
}

void menu_add_visibility(struct expr *expr)
{
	current_entry->visibility = expr_alloc_and(current_entry->visibility,