Ensure complete event is always fired