forked from github/server
Merge branch 'develop' of https://github.com/ennorehling/eressea.git
This commit is contained in:
commit
6ab35d80d0
|
@ -67,8 +67,12 @@ static int keys_size(int n) {
|
|||
assert(n > 0 && n <= 4096);
|
||||
if (n <= 1) return 1;
|
||||
if (n <= 4) return 4;
|
||||
if (n <= 8) return 8;
|
||||
if (n <= 16) return 16;
|
||||
if (n <= 256) return 256;
|
||||
if (n <= 512) return 512;
|
||||
if (n <= 1024) return 1024;
|
||||
if (n <= 2048) return 2048;
|
||||
return 4096;
|
||||
}
|
||||
|
||||
|
|
|
@ -225,13 +225,15 @@ equipment *get_equipment(const char *eqname)
|
|||
|
||||
equipment *create_equipment(const char *eqname)
|
||||
{
|
||||
size_t len = strlen(eqname);
|
||||
eq_entry ent;
|
||||
|
||||
if (strlen(eqname) > EQNAMELEN) {
|
||||
if (len > EQNAMELEN) {
|
||||
log_error("equipment names should be no longer than %d bytes: %s", EQNAMELEN, eqname);
|
||||
len = EQNAMELEN;
|
||||
}
|
||||
/* OBS: we require the nul-padding property of strncpy here, so do not use strlcpy: */
|
||||
strncpy(ent.key, eqname, EQNAMELEN);
|
||||
memset(ent.key, 0, EQNAMELEN);
|
||||
memcpy(ent.key, eqname, len);
|
||||
|
||||
ent.value = (equipment *)calloc(1, sizeof(equipment));
|
||||
ent.value->name = strdup(eqname);
|
||||
|
|
Loading…
Reference in New Issue