add extra null pointer check