add malloc checking