fix bugs about read from plist