Make unrecognized behavior a bit more gentle

 Use handle_error callable to deal with unrecognized extensions.