in the function B-tree-find-max(). the recursive call is wrong:
B-TREE-FIND-MAX(x)
if x == NIL // T is empty
return NIL
else if x.leaf // x is leaf
return x.[x.n] // return the maximum key of x
else
DISK-READ(x.c[x.n + 1])
return B-TREE-FIND-MIN(x.c[x.n + 1])
in the function B-tree-find-max(). the recursive call is wrong: