fixed file watch callback