MCPcopy Create free account
hub / github.com/coreboot/coreboot / item_make

Function item_make

util/kconfig/nconf.c:535–572  ·  view source on GitHub ↗

Make a new item. */

Source from the content-addressed store, hash-verified

533
534/* Make a new item. */
535static void item_make(struct menu *menu, char tag, const char *fmt, ...)
536{
537 va_list ap;
538
539 if (items_num > MAX_MENU_ITEMS-1)
540 return;
541
542 bzero(&k_menu_items[items_num], sizeof(k_menu_items[0]));
543 k_menu_items[items_num].tag = tag;
544 k_menu_items[items_num].usrptr = menu;
545 if (menu != NULL)
546 k_menu_items[items_num].is_visible =
547 menu_is_visible(menu);
548 else
549 k_menu_items[items_num].is_visible = 1;
550
551 va_start(ap, fmt);
552 vsnprintf(k_menu_items[items_num].str,
553 sizeof(k_menu_items[items_num].str),
554 fmt, ap);
555 va_end(ap);
556
557 if (!k_menu_items[items_num].is_visible)
558 memcpy(k_menu_items[items_num].str, "XXX", 3);
559
560 curses_menu_items[items_num] = new_item(
561 k_menu_items[items_num].str,
562 k_menu_items[items_num].str);
563 set_item_userptr(curses_menu_items[items_num],
564 &k_menu_items[items_num]);
565 /*
566 if (!k_menu_items[items_num].is_visible)
567 item_opts_off(curses_menu_items[items_num], O_SELECTABLE);
568 */
569
570 items_num++;
571 curses_menu_items[items_num] = NULL;
572}
573
574/* very hackish. adds a string to the last item added */
575static void item_add_str(const char *fmt, ...)

Callers 4

build_confFunction · 0.70
conf_choiceFunction · 0.70
build_confFunction · 0.70
conf_choiceFunction · 0.70

Calls 5

menu_is_visibleFunction · 0.85
new_itemFunction · 0.85
set_item_userptrFunction · 0.85
vsnprintfFunction · 0.50
memcpyFunction · 0.50

Tested by

no test coverage detected