mirror of
https://github.com/neovim/neovim.git
synced 2025-10-12 21:06:13 +00:00
ASan: Fix "null pointer passed for argument declared to never be null". #2925
Arguments passed to xmemdupz() are sometimes NULL, but xmemdupz() has FUNC_ATTR_NONNULL_ALL. Check pointers for NULL before calling xmemdupz(). Resolves #2533.
This commit is contained in:
@@ -426,8 +426,12 @@ bool object_to_vim(Object obj, typval_T *tv, Error *err)
|
||||
|
||||
case kObjectTypeString:
|
||||
tv->v_type = VAR_STRING;
|
||||
tv->vval.v_string = xmemdupz(obj.data.string.data,
|
||||
obj.data.string.size);
|
||||
if (obj.data.string.data == NULL) {
|
||||
tv->vval.v_string = NULL;
|
||||
} else {
|
||||
tv->vval.v_string = xmemdupz(obj.data.string.data,
|
||||
obj.data.string.size);
|
||||
}
|
||||
break;
|
||||
|
||||
case kObjectTypeArray:
|
||||
|
Reference in New Issue
Block a user