bugfix+refactoring: 'error' callback on defaultComplete can not be empty

... as it is defined above if empty
but it still may not be callable