imagex_update(): Acquire capture privileges on Windows
authorEric Biggers <ebiggers3@gmail.com>
Sun, 19 May 2013 21:56:49 +0000 (16:56 -0500)
committerEric Biggers <ebiggers3@gmail.com>
Sun, 19 May 2013 21:56:49 +0000 (16:56 -0500)
programs/imagex.c

index 0a1f77b..601ad01 100644 (file)
@@ -3079,15 +3079,23 @@ imagex_update(int argc, tchar **argv)
                }
        }
 
                }
        }
 
+#ifdef __WIN32__
+       win32_acquire_capture_privileges();
+#endif
+
        /* Execute the update commands */
        ret = wimlib_update_image(wim, image, cmds, num_cmds, update_flags,
                                  imagex_progress_func);
        if (ret)
        /* Execute the update commands */
        ret = wimlib_update_image(wim, image, cmds, num_cmds, update_flags,
                                  imagex_progress_func);
        if (ret)
-               goto out_free_cmds;
+               goto out_release_privs;
 
        /* Overwrite the updated WIM */
        ret = wimlib_overwrite(wim, write_flags, num_threads,
                               imagex_progress_func);
 
        /* Overwrite the updated WIM */
        ret = wimlib_overwrite(wim, write_flags, num_threads,
                               imagex_progress_func);
+out_release_privs:
+#ifdef __WIN32__
+       win32_release_capture_privileges();
+#endif
 out_free_cmds:
        free(cmds);
 out_free_cmd_file_contents:
 out_free_cmds:
        free(cmds);
 out_free_cmd_file_contents: