提交 c4f9edf1 编写于 作者: D Daniel P. Berrange

Use VIR_ALLOC_VAR instead of VIR_ALLOC_N for creating virObject

The current way virObject instances are allocated using
VIR_ALLOC_N causes alignment warnings

util/virobject.c: In function 'virObjectNew':
util/virobject.c:195:11: error: cast increases required alignment of target type [-Werror=cast-align]

Changing to use VIR_ALLOC_VAR will avoid the need todo
the casts entirely.
Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
上级 e95de74d
......@@ -186,13 +186,13 @@ bool virClassIsDerivedFrom(virClassPtr klass,
void *virObjectNew(virClassPtr klass)
{
virObjectPtr obj = NULL;
char *somebytes;
if (VIR_ALLOC_N(somebytes, klass->objectSize) < 0) {
if (VIR_ALLOC_VAR(obj,
char,
klass->objectSize - sizeof(virObject)) < 0) {
virReportOOMError();
return NULL;
}
obj = (virObjectPtr)somebytes;
obj->magic = klass->magic;
obj->klass = klass;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册