- d->version = malloc(sizeof(uint32_t) * d->version_size);
- memset(d->version, 0, sizeof(uint32_t) * d->version_size);
+ d->version = (uint16_t *) malloc(sizeof(uint16_t) * d->version_size);
+ if (!d->version) {
+ perror("malloc");
+ abort();
+ exit(EXIT_FAILURE);
+ }
+ memset(d->version, 0, sizeof(uint16_t) * d->version_size);