fix gc bug