Zero out newly created ExtensionEntry structures, but only after the
devPrivates have been initialized.
This commit is contained in:
parent
cec392656c
commit
9deb579dc9
|
@ -80,7 +80,7 @@ extern int extensionPrivateLen;
|
||||||
extern unsigned *extensionPrivateSizes;
|
extern unsigned *extensionPrivateSizes;
|
||||||
extern unsigned totalExtensionSize;
|
extern unsigned totalExtensionSize;
|
||||||
|
|
||||||
static int
|
static void
|
||||||
InitExtensionPrivates(ExtensionEntry *ext)
|
InitExtensionPrivates(ExtensionEntry *ext)
|
||||||
{
|
{
|
||||||
register char *ptr;
|
register char *ptr;
|
||||||
|
@ -107,7 +107,6 @@ InitExtensionPrivates(ExtensionEntry *ext)
|
||||||
else
|
else
|
||||||
ppriv->ptr = (pointer)NULL;
|
ppriv->ptr = (pointer)NULL;
|
||||||
}
|
}
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_X_EXPORT ExtensionEntry *
|
_X_EXPORT ExtensionEntry *
|
||||||
|
@ -127,9 +126,10 @@ AddExtension(char *name, int NumEvents, int NumErrors,
|
||||||
return((ExtensionEntry *) NULL);
|
return((ExtensionEntry *) NULL);
|
||||||
|
|
||||||
ext = (ExtensionEntry *) xalloc(totalExtensionSize);
|
ext = (ExtensionEntry *) xalloc(totalExtensionSize);
|
||||||
if (!ext || !InitExtensionPrivates(ext))
|
if (!ext)
|
||||||
return((ExtensionEntry *) NULL);
|
return((ExtensionEntry *) NULL);
|
||||||
bzero(ext, totalExtensionSize);
|
bzero(ext, totalExtensionSize);
|
||||||
|
InitExtensionPrivates(ext);
|
||||||
ext->name = (char *)xalloc(strlen(name) + 1);
|
ext->name = (char *)xalloc(strlen(name) + 1);
|
||||||
ext->num_aliases = 0;
|
ext->num_aliases = 0;
|
||||||
ext->aliases = (char **)NULL;
|
ext->aliases = (char **)NULL;
|
||||||
|
|
Loading…
Reference in New Issue