From f1807126250c33751b2a0a054354dff4f1d531df Mon Sep 17 00:00:00 2001 From: Ron Koenderink Date: Mon, 6 Oct 2008 17:58:59 -0600 Subject: [PATCH] Fix initialization of new elements in plane, land and nuke tables ef_init_srv() neglected to set struct empfile callback oninit. This made unit_carrier_change() crash or oops on freshly initialized planes, land units and nukes, i.e. when build used an uid that hadn't been used before. Oops recovery worked. Broken in commit 64a53c90, v4.3.17. --- src/lib/subs/fileinit.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lib/subs/fileinit.c b/src/lib/subs/fileinit.c index 4b1619c6..f81c296d 100644 --- a/src/lib/subs/fileinit.c +++ b/src/lib/subs/fileinit.c @@ -68,6 +68,7 @@ ef_init_srv(void) unsigned i; for (i = 0; i < sizeof(fileinit) / sizeof(fileinit[0]); i++) { + empfile[fileinit[i].ef_type].oninit = fileinit[i].oninit; empfile[fileinit[i].ef_type].postread = fileinit[i].postread; empfile[fileinit[i].ef_type].prewrite = fileinit[i].prewrite; empfile[fileinit[i].ef_type].onresize = fileinit[i].onresize;