Mercurial > vim
annotate src/proto/hashtab.pro @ 12154:71e10b81226d v8.0.0957
patch 8.0.0957: a terminal job can deadlock when sending many keys
commit https://github.com/vim/vim/commit/97bd5e6527bf2b48acdd1550acba161e82a5bc99
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Aug 18 20:50:30 2017 +0200
patch 8.0.0957: a terminal job can deadlock when sending many keys
Problem: When term_sendkeys() sends many keys it may get stuck in writing
to the job.
Solution: Make the write non-blocking, buffer keys to be sent.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 18 Aug 2017 21:00:05 +0200 |
parents | 21b0a39d13ed |
children | 34966be2e856 |
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); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
12 void hash_unlock(hashtab_T *ht); |
21b0a39d13ed
commit https://github.com/vim/vim/commit/ef26954a35207c3f17d6ed35d9a40c918d974892
Christian Brabandt <cb@256bit.org>
parents:
1121
diff
changeset
|
13 hash_T hash_hash(char_u *key); |
799 | 14 /* vim: set ft=c : */ |