RT3917: add cleanup on an error path