diff options
Diffstat (limited to 'Library/UefiShellUfmCommandLib/panel.c')
-rw-r--r-- | Library/UefiShellUfmCommandLib/panel.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Library/UefiShellUfmCommandLib/panel.c b/Library/UefiShellUfmCommandLib/panel.c index 3c6cc6c..66f3b13 100644 --- a/Library/UefiShellUfmCommandLib/panel.c +++ b/Library/UefiShellUfmCommandLib/panel.c @@ -70,14 +70,13 @@ struct panel_ctx *panel_alloc(struct screen *scr, CONST CHAR16 *path, return NULL; } - panel->cwd = path; panel->name_cols = name_cols; panel->curline = 1; panel->list_lines = lines - 5; panel->start_entry = 1; wrefresh(panel->wbg); - res = panel_show(panel, panel->cwd); + res = panel_show(panel, path); if(!res) { panel_release(panel); return NULL; @@ -99,6 +98,8 @@ VOID panel_release(struct panel_ctx *p) delwin(p->wfname); if(p->wmarked) delwin(p->wmarked); + if(p->cwd) + FreePool(p->cwd); FreePool(p); } |