Mercurial > vim
annotate src/proto/hashtab.pro @ 29647:d564107db756 v9.0.0164
patch 9.0.0164: using freed memory with put command
Commit: https://github.com/vim/vim/commit/c390cc13e55b25d85a0684aa1becde881ef8ab19
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Aug 7 18:09:10 2022 +0100
patch 9.0.0164: using freed memory with put command
Problem: Using freed memory with put command.
Solution: Get byte offset before replacing the line.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 07 Aug 2022 19:15:02 +0200 |
parents | 34966be2e856 |
children | 684e6dfa2fba |
rev | line source |
---|---|
799 | 1 /* hashtab.c */ |
7668
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
2 void hash_init(hashtab_T *ht); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
3 void hash_clear(hashtab_T *ht); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
4 void hash_clear_all(hashtab_T *ht, int off); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
5 hashitem_T *hash_find(hashtab_T *ht, char_u *key); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
6 hashitem_T *hash_lookup(hashtab_T *ht, char_u *key, hash_T hash); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
7 void hash_debug_results(void); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
8 int hash_add(hashtab_T *ht, char_u *key); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
9 int hash_add_item(hashtab_T *ht, hashitem_T *hi, char_u *key, hash_T hash); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
10 void hash_remove(hashtab_T *ht, hashitem_T *hi); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
11 void hash_lock(hashtab_T *ht); |
17508
34966be2e856
patch 8.1.1752: resizing hashtable is inefficient
Bram Moolenaar <Bram@vim.org>
parents:
7668
diff
changeset
|
12 void hash_lock_size(hashtab_T *ht, int size); |
7668
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
13 void hash_unlock(hashtab_T *ht); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
14 hash_T hash_hash(char_u *key); |
799 | 15 /* vim: set ft=c : */ |