summaryrefslogtreecommitdiffstats
path: root/scripts/kconfig/menu.c
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2019-12-17 05:14:23 +0100
committerMasahiro Yamada <masahiroy@kernel.org>2020-01-06 18:18:44 +0100
commitadf7c5bd0674b04588246e444efef9987b2f1a6b (patch)
tree4d312ce2693fb3efd480c788b42c692bc77bee81 /scripts/kconfig/menu.c
parentkconfig: remove sym from struct property (diff)
downloadlinux-adf7c5bd0674b04588246e444efef9987b2f1a6b.tar.xz
linux-adf7c5bd0674b04588246e444efef9987b2f1a6b.zip
kconfig: squash prop_alloc() into menu_add_prop()
prop_alloc() is only called from menu_add_prop(). Squash it. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'scripts/kconfig/menu.c')
-rw-r--r--scripts/kconfig/menu.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c
index 5a43784ded2c..8b772ced755d 100644
--- a/scripts/kconfig/menu.c
+++ b/scripts/kconfig/menu.c
@@ -127,12 +127,28 @@ void menu_set_type(int type)
static struct property *menu_add_prop(enum prop_type type, struct expr *expr,
struct expr *dep)
{
- struct property *prop = prop_alloc(type, current_entry->sym);
+ struct property *prop;
+ prop = xmalloc(sizeof(*prop));
+ memset(prop, 0, sizeof(*prop));
+ prop->type = type;
+ prop->file = current_file;
+ prop->lineno = zconf_lineno();
prop->menu = current_entry;
prop->expr = expr;
prop->visible.expr = dep;
+ /* append property to the prop list of symbol */
+ if (current_entry->sym) {
+ struct property **propp;
+
+ for (propp = &current_entry->sym->prop;
+ *propp;
+ propp = &(*propp)->next)
+ ;
+ *propp = prop;
+ }
+
return prop;
}