]> wimlib.net Git - wimlib/blobdiff - src/xml.c
Update wimlib.h documentation
[wimlib] / src / xml.c
index f9e93fc36c1b6d6fedcdfc2ca3a4f192fb118384..d6c665575119f2080e50117f3e8685fb9eb6be7b 100644 (file)
--- a/src/xml.c
+++ b/src/xml.c
@@ -1299,7 +1299,7 @@ int write_xml_data(const struct wim_info *wim_info, int image, FILE *out,
        size_t bytes_written;
        off_t start_offset, end_offset;
 
-       wimlib_assert(image == WIM_ALL_IMAGES ||
+       wimlib_assert(image == WIMLIB_ALL_IMAGES ||
                        (wim_info != NULL && image >= 1 &&
                         image <= wim_info->num_images));
 
@@ -1353,7 +1353,7 @@ int write_xml_data(const struct wim_info *wim_info, int image, FILE *out,
        if (wim_info != NULL) {
                DEBUG("Writing %d <IMAGE> elements", (int)wim_info->num_images);
                for (int i = 1; i <= (int)wim_info->num_images; i++) {
-                       if (image != WIM_ALL_IMAGES && i != image)
+                       if (image != WIMLIB_ALL_IMAGES && i != image)
                                continue;
                        DEBUG("Writing <IMAGE> element for image %d", i);
                        ret = xml_write_image_info(writer, &wim_info->images[i - 1]);
@@ -1443,7 +1443,7 @@ WIMLIBAPI bool wimlib_image_name_in_use(const WIMStruct *w, const char *name)
        int i;
 
        DEBUG("Checking to see if the image name `%s' is already in use", name);
-       if (!name || !w->wim_info)
+       if (!name || !*name || !w->wim_info)
                return false;
        for (i = 1; i <= w->wim_info->num_images; i++)
                if (strcmp(w->wim_info->images[i - 1].name, name) == 0)
@@ -1455,6 +1455,9 @@ WIMLIBAPI bool wimlib_image_name_in_use(const WIMStruct *w, const char *name)
 WIMLIBAPI int wimlib_extract_xml_data(WIMStruct *w, FILE *fp)
 {
        DEBUG("Extracting the XML data.");
+       if (!w->xml_data)
+               return WIMLIB_ERR_INVALID_PARAM;
+
        if (fwrite(w->xml_data, 1, w->hdr.xml_res_entry.size, fp) !=
                        w->hdr.xml_res_entry.size) {
                ERROR_WITH_ERRNO("Failed to extract XML data");