[libglnx] macros: Add a size check for hashtable iters
- From: Colin Walters <walters src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libglnx] macros: Add a size check for hashtable iters
- Date: Fri, 30 Jun 2017 16:18:00 +0000 (UTC)
commit a37e672739197b8a7f3bdfe3f17099fe402f9a98
Author: Colin Walters <walters verbum org>
Date: Fri Jun 30 12:11:14 2017 -0400
macros: Add a size check for hashtable iters
If the user provides a less than pointer-sized type, we'll clobber other things
on the stack.
See https://github.com/ostreedev/ostree/pull/990/
glnx-macros.h | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/glnx-macros.h b/glnx-macros.h
index 24705af..1d4e175 100644
--- a/glnx-macros.h
+++ b/glnx-macros.h
@@ -120,6 +120,8 @@ G_BEGIN_DECLS
#define _GLNX_HASH_TABLE_FOREACH_IMPL_KV(guard, ht, it, kt, k, vt, v) \
gboolean guard = TRUE; \
+ G_STATIC_ASSERT (sizeof (kt) == sizeof (void*)); \
+ G_STATIC_ASSERT (sizeof (vt) == sizeof (void*)); \
for (GHashTableIter it; \
guard && ({ g_hash_table_iter_init (&it, ht), TRUE; }); \
guard = FALSE) \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]