patch 8.1.1827: allocating more memory than needed for extended structs
Problem: Allocating more memory than needed for extended structs.
Solution: Use offsetof() instead of sizeof(). (Dominique Pelle,
closes #4786)
diff --git a/src/structs.h b/src/structs.h
index c34bbeb..0aedbbd 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -742,9 +742,9 @@
// Sign group
typedef struct signgroup_S
{
- short_u refcount; // number of signs in this group
int next_sign_id; // next sign id for this group
- char_u sg_name[1]; // sign group name
+ short_u refcount; // number of signs in this group
+ char_u sg_name[1]; // sign group name, actually longer
} signgroup_T;
typedef struct signlist signlist_T;