* grub-core/fs/bfs.c (find_in_b_tree) [MODE_AFS]: Fix handling of exact
match in inner node.
This commit is contained in:
parent
2e57f28fc7
commit
38c8ee20ca
2 changed files with 13 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
|||
2012-05-12 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* grub-core/fs/bfs.c (find_in_b_tree) [MODE_AFS]: Fix handling of exact
|
||||
match in inner node.
|
||||
|
||||
2012-05-12 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* grub-core/fs/bfs.c (mount): Improve filesystem detection reliability.
|
||||
|
|
|
@ -614,7 +614,11 @@ find_in_b_tree (grub_disk_t disk,
|
|||
*res = grub_bfs_to_cpu64 (key_values[i | (1 << j)]);
|
||||
return GRUB_ERR_NONE;
|
||||
}
|
||||
#ifdef MODE_AFS
|
||||
if (cmp <= 0)
|
||||
#else
|
||||
if (cmp < 0)
|
||||
#endif
|
||||
i |= (1 << j);
|
||||
}
|
||||
if (i == 0)
|
||||
|
@ -630,7 +634,11 @@ find_in_b_tree (grub_disk_t disk,
|
|||
*res = grub_bfs_to_cpu64 (key_values[0]);
|
||||
return GRUB_ERR_NONE;
|
||||
}
|
||||
#ifdef MODE_AFS
|
||||
if (cmp > 0 && level != 0)
|
||||
#else
|
||||
if (cmp >= 0 && level != 0)
|
||||
#endif
|
||||
{
|
||||
node_off = grub_bfs_to_cpu64 (key_values[0]);
|
||||
level--;
|
||||
|
|
Loading…
Reference in a new issue