Properly initialize data_size for empty data segment
if (blerg->data != NULL)
munmap(blerg->data, blerg->data_size);
fstat(blerg->data_fd, &st);
- if (st.st_size == 0) {
+ blerg->data_size = st.st_size;
+ if (blerg->data_size == 0) {
/* Can't map an empty data file. */
return 1;
}
- blerg->data = (char *) mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, blerg->data_fd, 0);
+ blerg->data = (char *) mmap(NULL, blerg->data_size, PROT_READ, MAP_SHARED, blerg->data_fd, 0);
if (blerg->data == MAP_FAILED) {
perror("Could not remap data");
return 0;
}
- blerg->data_size = st.st_size;
return 1;
}