if you call it with an err and then with no err then the err_cb gets called with nothing