From: Hallvard Furuseth Date: Tue, 29 Sep 2009 22:45:34 +0000 (+0000) Subject: ITS#6303: fix broken variant of the struct hack X-Git-Tag: ACLCHECK_0~201 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=e6fc72d3c6a44a1726b89166179679a40189bf00;p=openldap ITS#6303: fix broken variant of the struct hack --- diff --git a/servers/slapd/back-ldif/ldif.c b/servers/slapd/back-ldif/ldif.c index 9a4ad7ad56..128419341d 100644 --- a/servers/slapd/back-ldif/ldif.c +++ b/servers/slapd/back-ldif/ldif.c @@ -593,9 +593,9 @@ typedef struct bvlist { char *trunc; /* filename was truncated here */ int inum; /* num from "attr={num}" in filename, or INT_MIN */ char savech; /* original char at *trunc */ - char fname; /* variable length array BVL_NAME(bvl) = &fname */ -# define BVL_NAME(bvl) ((char *) (bvl) + offsetof(bvlist, fname)) -# define BVL_SIZE(namelen) (sizeof(bvlist) + (namelen)) + /* BVL_NAME(&bvlist) is the filename, allocated after the struct: */ +# define BVL_NAME(bvl) ((char *) ((bvl) + 1)) +# define BVL_SIZE(namelen) (sizeof(bvlist) + (namelen) + 1) } bvlist; static int