]> wimlib.net Git - wimlib/blobdiff - programs/imagex.c
Don't hold d_unused fields in memory
[wimlib] / programs / imagex.c
index d0127b625747287b6d4e4d193f65c103975bc36b..7914573f59fa45a5213e610316ae7eae817c371f 100644 (file)
@@ -167,14 +167,14 @@ enum {
        IMAGEX_LAZY_OPTION,
        IMAGEX_LOOKUP_TABLE_OPTION,
        IMAGEX_METADATA_OPTION,
-       IMAGEX_NORPFIX_OPTION,
        IMAGEX_NOCHECK_OPTION,
+       IMAGEX_NORPFIX_OPTION,
+       IMAGEX_NOT_PIPABLE_OPTION,
        IMAGEX_NO_ACLS_OPTION,
        IMAGEX_NO_ATTRIBUTES_OPTION,
        IMAGEX_NO_WILDCARDS_OPTION,
        IMAGEX_NULLGLOB_OPTION,
        IMAGEX_ONE_FILE_ONLY_OPTION,
-       IMAGEX_NOT_PIPABLE_OPTION,
        IMAGEX_PACK_CHUNK_SIZE_OPTION,
        IMAGEX_PACK_STREAMS_OPTION,
        IMAGEX_PATH_OPTION,
@@ -2946,7 +2946,6 @@ imagex_extract(int argc, tchar **argv, int cmd)
        int ret;
        const tchar *wimfile;
        const tchar *image_num_or_name;
-       const tchar *pathlist;
        tchar *dest_dir = T(".");
        int extract_flags = WIMLIB_EXTRACT_FLAG_NORPFIX |
                            WIMLIB_EXTRACT_FLAG_GLOB_PATHS |
@@ -2955,8 +2954,6 @@ imagex_extract(int argc, tchar **argv, int cmd)
 
        STRING_SET(refglobs);
 
-       struct wimlib_extract_command *cmds;
-       size_t num_cmds;
        tchar *root_path = T("");
 
        for_opt(c, extract_options) {
@@ -3015,6 +3012,13 @@ imagex_extract(int argc, tchar **argv, int cmd)
        if (argc < 2)
                goto out_usage;
 
+       if (!(extract_flags & (WIMLIB_EXTRACT_FLAG_GLOB_PATHS |
+                              WIMLIB_EXTRACT_FLAG_STRICT_GLOB)))
+       {
+               imagex_error(T("Can't combine --no-wildcards and --nullglob!"));
+               goto out_err;
+       }
+
        wimfile = argv[0];
        image_num_or_name = argv[1];
 
@@ -4064,7 +4068,7 @@ T(
 "                    [--check] [--ref=\"GLOB\"] [--dest-dir=CMD_DIR]\n"
 "                    [--to-stdout] [--no-acls] [--strict-acls]\n"
 "                    [--no-attributes] [--include-invalid-names]\n"
-"                    [--no-wildcards] [--nullglob]\n"
+"                    [--no-wildcards] [--nullglob] [--preserve-dir-structure]\n"
 ),
 [CMD_INFO] =
 T(