void (*prewrite)(int id, void *old, void *elt);
/*
* Called after table size changed, with file type as argument.
- * Return -1 and set errno to make the operation fail.
*/
- int (*onresize)(int type);
+ void (*onresize)(int type);
};
struct emptypedstr {
extern int unit_cargo_next(int, int);
extern int unit_cargo_count(int, int, int);
extern int unit_nplane(int, int, int *, int *, int *);
-extern int unit_onresize(int);
+extern void unit_onresize(int);
extern void unit_list(struct emp_qelem *);
extern void unit_put(struct emp_qelem *list, natid actor);
* Return 0 on success, -1 on error.
* This is the struct empfile onresize callback for units.
*/
-int
+void
unit_onresize(int type)
{
int n, i;
struct clink *cl;
if (CANT_HAPPEN(type < EF_SHIP || type > EF_NUKE))
- return -1;
+ return;
n = ef_nelem(type);
cl = realloc(clink[type], n * sizeof(*clink[type]));
nclink[type] = n;
if (ef_flags(type) & EFF_MEM)
clink_check(type);
- return 0;
}
/*
}
}
- if (ep->onresize && ep->onresize(type) < 0)
- return 0;
+ if (ep->onresize)
+ ep->onresize(type);
return 1;
}
}
ep->flags &= EFF_IMMUTABLE;
ep->baseid = ep->cids = ep->fids = 0;
- if (ep->onresize && ep->onresize(type) < 0)
- retval = 0;
+ if (ep->onresize)
+ ep->onresize(type);
return retval;
}
if (id >= ep->fids) {
/* write beyond end of file extends it, take note */
ep->fids = id + 1;
- if (ep->onresize && ep->onresize(type) < 0)
- return 0;
+ if (ep->onresize)
+ ep->onresize(type);
}
if (id >= ep->baseid && id < ep->baseid + ep->cids) {
cachep = ep->cache + (id - ep->baseid) * ep->size;
}
}
ep->fids = id + count;
- if (ep->onresize && ep->onresize(type) < 0)
- return 0;
+ if (ep->onresize)
+ ep->onresize(type);
return 1;
}
ep->cids = count - ep->baseid;
}
- if (ep->onresize && ep->onresize(type) < 0)
- return 0;
+ if (ep->onresize)
+ ep->onresize(type);
return 1;
}
void (*oninit)(void *);
void (*postread)(int, void *);
void (*prewrite)(int, void *, void *);
- int (*onresize)(int);
+ void (*onresize)(int);
};
static struct fileinit fileinit[] = {