solve string recerive bug