num_images = 0;
for_node_child(wim_node, child) {
if (node_is_element(child) && node_name_is(child, "IMAGE")) {
- if (num_images == INT_MAX) {
- return WIMLIB_ERR_IMAGE_COUNT;
+ if (unlikely(num_images == MAX_IMAGES)) {
+ ret = WIMLIB_ERR_IMAGE_COUNT;
+ goto err;
}
num_images++;
}
ERROR("WIM images are not indexed [1...%d] "
"in XML data as expected",
num_images);
- return WIMLIB_ERR_IMAGE_COUNT;
+ ret = WIMLIB_ERR_IMAGE_COUNT;
+ goto err;
}
}
size_t xml_len;
DEBUG("Writing WIM XML data (image=%d, offset=%"PRIu64")",
- image, total_bytes, wim->out_fd.offset);
+ image, wim->out_fd.offset);
ret = prepare_wim_xml_data(wim, image, total_bytes,
&xml_data, &xml_len);