Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@xxxxxxxxxxxx> --- common/complete.c | 24 ++++++++++++++++++++++++ 1 files changed, 24 insertions(+), 0 deletions(-) diff --git a/common/complete.c b/common/complete.c index 46ba871..40f2e15 100644 --- a/common/complete.c +++ b/common/complete.c @@ -84,6 +84,28 @@ static int command_complete(struct string_list *sl, char *instr) return 0; } +static int device_complete(struct string_list *sl, char *instr) +{ + struct device_d *dev; + char *instr_param; + char cmd[128]; + int len, len2; + + len = strlen(instr); + + for_each_device(dev) { + if (!strncmp(instr, dev_name(dev), len)) { + len2 = strlen(dev_name(dev)); + strcpy(cmd, dev_name(dev)); + cmd[len2] = ' '; + cmd[len2 + 1] = 0; + string_list_add(sl, cmd); + } + } + + return 0; +} + static int tab_pressed = 0; void complete_reset(void) @@ -124,6 +146,8 @@ int complete(char *instr, char **outstr) } else command_complete(&sl, instr); + device_complete(&sl, instr); + pos = strlen(instr); *outstr = ""; -- 1.7.4.1 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox