修复若干问题，不过处理的并不漂亮

Signed-off-by: Meathill <meathill@gmail.com>