summaryrefslogtreecommitdiffstats
path: root/cpukit/libblock/src/bdbuf.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2012-05-14 12:13:04 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2012-05-14 16:57:59 +0200
commit3c462734bae0b627df504956cede30f60a4b6e20 (patch)
tree2e32eecac2ad40b2d53f8e53939265901d14879f /cpukit/libblock/src/bdbuf.c
parentdosfs: Remove unused parameter (diff)
downloadrtems-3c462734bae0b627df504956cede30f60a4b6e20.tar.bz2
libblock: Fix purge device tree traversal
Diffstat (limited to 'cpukit/libblock/src/bdbuf.c')
-rw-r--r--cpukit/libblock/src/bdbuf.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/cpukit/libblock/src/bdbuf.c b/cpukit/libblock/src/bdbuf.c
index ad1112b517..de2cebd7be 100644
--- a/cpukit/libblock/src/bdbuf.c
+++ b/cpukit/libblock/src/bdbuf.c
@@ -2853,7 +2853,8 @@ rtems_bdbuf_gather_for_purge (rtems_chain_control *purge_list,
}
else
{
- while (*prev != NULL && cur == (*prev)->avl.right)
+ while (*prev != NULL
+ && (cur == (*prev)->avl.right || (*prev)->avl.right == NULL))
{
/* Up */
cur = *prev;