aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/htable.h4
-rw-r--r--src/io.c17
-rw-r--r--src/note.c10
3 files changed, 18 insertions, 13 deletions
diff --git a/src/htable.h b/src/htable.h
index 10d04c1..efd7cac 100644
--- a/src/htable.h
+++ b/src/htable.h
@@ -69,9 +69,7 @@ struct name { \
}
#define HTABLE_ENTRY(type) \
-struct { \
- struct type *next; /* To build the bucket chain list. */ \
-}
+struct type *next /* To build the bucket chain list. */
#define HTABLE_SIZE(head) \
(sizeof (*(head)->bkts) ? sizeof ((head)->bkts) / sizeof (*(head)->bkts) : 0)
diff --git a/src/io.c b/src/io.c
index fde4fb9..418feea 100644
--- a/src/io.c
+++ b/src/io.c
@@ -72,6 +72,15 @@ struct ht_keybindings_s {
HTABLE_ENTRY (ht_keybindings_s);
};
+static void load_keys_ht_getkey (struct ht_keybindings_s *, char **, int *);
+static int load_keys_ht_compare (struct ht_keybindings_s *,
+ struct ht_keybindings_s *);
+
+#define HSIZE 256
+HTABLE_HEAD (ht_keybindings, HSIZE, ht_keybindings_s);
+HTABLE_GENERATE (ht_keybindings, ht_keybindings_s, load_keys_ht_getkey,
+ load_keys_ht_compare)
+
/* Draw a progress bar while saving, loading or exporting data. */
static void
progress_bar (progress_bar_t type, int progress)
@@ -752,12 +761,7 @@ io_load_keys (char *pager)
keys_init ();
-#define HSIZE 256
- HTABLE_HEAD (ht_keybindings, HSIZE, ht_keybindings_s) ht_keys =
- HTABLE_INITIALIZER (&ht_keys);
-
- HTABLE_GENERATE (ht_keybindings, ht_keybindings_s, load_keys_ht_getkey,
- load_keys_ht_compare);
+ struct ht_keybindings ht_keys = HTABLE_INITIALIZER (&ht_keys);
for (i = 0; i < NBKEYS; i++)
{
@@ -874,7 +878,6 @@ io_load_keys (char *pager)
keys_fill_missing ();
if (keys_check_missing_bindings ())
WARN_MSG (_("Some actions do not have any associated key bindings!"));
-#undef HSIZE
}
void
diff --git a/src/note.c b/src/note.c
index 1891a5f..4ea8996 100644
--- a/src/note.c
+++ b/src/note.c
@@ -46,6 +46,12 @@ struct note_gc_hash {
HTABLE_ENTRY (note_gc_hash);
};
+static void note_gc_extract_key (struct note_gc_hash *, char **, int *);
+static int note_gc_cmp (struct note_gc_hash *, struct note_gc_hash *);
+
+HTABLE_HEAD (htp, NOTE_GC_HSIZE, note_gc_hash);
+HTABLE_GENERATE (htp, note_gc_hash, note_gc_extract_key, note_gc_cmp)
+
/* Create note file from a string and return a newly allocated string that
* contains its name. */
char *
@@ -164,8 +170,7 @@ note_gc_cmp (struct note_gc_hash *a, struct note_gc_hash *b)
void
note_gc (void)
{
- HTABLE_HEAD (htp, NOTE_GC_HSIZE, note_gc_hash) gc_htable =
- HTABLE_INITIALIZER (&gc_htable);
+ struct htp gc_htable = HTABLE_INITIALIZER (&gc_htable);
struct note_gc_hash *hp;
DIR *dirp;
struct dirent *dp;
@@ -177,7 +182,6 @@ note_gc (void)
return;
/* Insert all note file names into a hash table. */
- HTABLE_GENERATE (htp, note_gc_hash, note_gc_extract_key, note_gc_cmp);
do
{
if ((dp = readdir (dirp)) && *(dp->d_name) != '.')