mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
menuselect: Add ability to set deprecated and removed versions.
The "deprecated_in" and "removed_in" information can now be set in MODULEINFO for a module and is then displayed in menuselect so users can be aware of when a module is slated to be deprecated and then removed. ASTERISK-29337 Change-Id: I6952889cf08e0e9e99cf8b43f99b3cef4688087a
This commit is contained in:
committed by
George Joseph
parent
be3e469f98
commit
6aac148d59
@@ -210,6 +210,8 @@ static void free_member(struct member *mem)
|
||||
xmlFree((void *) mem->defaultenabled);
|
||||
xmlFree((void *) mem->support_level);
|
||||
xmlFree((void *) mem->replacement);
|
||||
xmlFree((void *) mem->deprecated_in);
|
||||
xmlFree((void *) mem->removed_in);
|
||||
}
|
||||
|
||||
free(mem);
|
||||
@@ -341,6 +343,32 @@ static int process_xml_replacement_node(xmlNode *node, struct member *mem)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int process_xml_deprecatedin_node(xmlNode *node, struct member *mem)
|
||||
{
|
||||
const char *tmp = (const char *) xmlNodeGetContent(node);
|
||||
|
||||
if (tmp && !strlen_zero(tmp)) {
|
||||
xmlFree((void *) mem->deprecated_in);
|
||||
mem->deprecated_in = tmp;
|
||||
print_debug("Set deprecated_in for %s to %s\n", mem->name, mem->deprecated_in);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int process_xml_removedin_node(xmlNode *node, struct member *mem)
|
||||
{
|
||||
const char *tmp = (const char *) xmlNodeGetContent(node);
|
||||
|
||||
if (tmp && !strlen_zero(tmp)) {
|
||||
xmlFree((void *) mem->removed_in);
|
||||
mem->removed_in = tmp;
|
||||
print_debug("Set removed_in for %s to %s\n", mem->name, mem->removed_in);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int process_xml_ref_node(xmlNode *node, struct member *mem, struct reference_list *refs)
|
||||
{
|
||||
struct reference *ref;
|
||||
@@ -416,6 +444,8 @@ static const struct {
|
||||
{ "conflict", process_xml_conflict_node },
|
||||
{ "use", process_xml_use_node },
|
||||
{ "member_data", process_xml_member_data_node },
|
||||
{ "deprecated_in", process_xml_deprecatedin_node },
|
||||
{ "removed_in", process_xml_removedin_node },
|
||||
};
|
||||
|
||||
static node_handler lookup_node_handler(xmlNode *node)
|
||||
|
Reference in New Issue
Block a user