diff options
author | Stephen Warren | 2014-06-11 10:26:23 -0600 |
---|---|---|
committer | Simon Glass | 2014-06-23 15:37:24 -0600 |
commit | 9c38c070085b566e2fc3f7696cdd4362c2759285 (patch) | |
tree | 9b3881aac1b220099455d4a6d90c87c279286910 /arch | |
parent | 4d907025d6a530c0f3d2e869331e863c3e3cc3c2 (diff) |
sandbox: terminate os_dirent_ls() result list
Each node in the linked-list that os_dirent_ls() returns has its next
pointer set only when the next node is created. For the last node in the
list, there is no next node, so this never happens, and the next pointer
is never initialized. Explicitly initialize the next pointer so that it
isn't dangling. Without this, "sb ls" might crash.
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sandbox/cpu/os.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/sandbox/cpu/os.c b/arch/sandbox/cpu/os.c index 57d04a45b22..1c4aa3f9bc4 100644 --- a/arch/sandbox/cpu/os.c +++ b/arch/sandbox/cpu/os.c @@ -341,6 +341,7 @@ int os_dirent_ls(const char *dirname, struct os_dirent_node **headp) ret = -ENOMEM; goto done; } + next->next = NULL; strcpy(next->name, entry.d_name); switch (entry.d_type) { case DT_REG: |