mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
Merge pull request #17590 from bfredl/cbfree
refactor(autocmd): simplify check for freed callback
This commit is contained in:
commit
ff20d9b106
@ -2473,7 +2473,7 @@ bool aucmd_exec_is_deleted(AucmdExecutable acc)
|
||||
case CALLABLE_EX:
|
||||
return acc.callable.cmd == NULL;
|
||||
case CALLABLE_CB:
|
||||
return callback_is_freed(acc.callable.cb);
|
||||
return acc.callable.cb.type == kCallbackNone;
|
||||
case CALLABLE_NONE:
|
||||
return true;
|
||||
}
|
||||
|
@ -1155,27 +1155,6 @@ void callback_free(Callback *callback)
|
||||
callback->data.funcref = NULL;
|
||||
}
|
||||
|
||||
/// Check if callback is freed
|
||||
bool callback_is_freed(Callback callback)
|
||||
{
|
||||
switch (callback.type) {
|
||||
case kCallbackFuncref:
|
||||
return false;
|
||||
break;
|
||||
case kCallbackPartial:
|
||||
return false;
|
||||
break;
|
||||
case kCallbackLua:
|
||||
return callback.data.luaref == LUA_NOREF;
|
||||
break;
|
||||
case kCallbackNone:
|
||||
return true;
|
||||
break;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/// Copy a callback into a typval_T.
|
||||
void callback_put(Callback *cb, typval_T *tv)
|
||||
FUNC_ATTR_NONNULL_ALL
|
||||
|
Loading…
Reference in New Issue
Block a user