aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorerw7 <erw7.github@gmail.com>2020-07-31 23:08:34 +0900
committerGitHub <noreply@github.com>2020-07-31 16:08:34 +0200
commita4fe8bdc97c9313eb4543427cde75c54f7be8895 (patch)
treea9616595d5b7a290ac9ced87aaf2a648b0619750 /src
parent82bfdbfe5c4eebd98ef59b52045ffd198e7ff389 (diff)
downloadrneovim-a4fe8bdc97c9313eb4543427cde75c54f7be8895.tar.gz
rneovim-a4fe8bdc97c9313eb4543427cde75c54f7be8895.tar.bz2
rneovim-a4fe8bdc97c9313eb4543427cde75c54f7be8895.zip
shada: fix failed assertion on exit (#12692)
If set the number of history saves is 0, assertions fail when inserting an entry on exit. Dont insert an entry when the number of saves is 0 fixes the issue. fixes #11497
Diffstat (limited to 'src')
-rw-r--r--src/nvim/shada.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/nvim/shada.c b/src/nvim/shada.c
index 95257fe945..aa19d1db1f 100644
--- a/src/nvim/shada.c
+++ b/src/nvim/shada.c
@@ -2207,8 +2207,12 @@ static inline ShaDaWriteResult shada_read_when_writing(
shada_free_shada_entry(&entry);
break;
}
- hms_insert(&wms->hms[entry.data.history_item.histtype], entry, true,
- true);
+ if (wms->hms[entry.data.history_item.histtype].hmll.size != 0) {
+ hms_insert(&wms->hms[entry.data.history_item.histtype], entry, true,
+ true);
+ } else {
+ shada_free_shada_entry(&entry);
+ }
break;
}
case kSDItemRegister: {