fix 'return' bug