修复 bug1.
修复 bug2
修复 bug3
修复 bug4
修复 bug5
修复 bug5 在marster上。
Merge branch 'BUG'