fixed: should close signal