X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=src%2Fupdate_image.c;h=c76ae97131d728935db67c62d8f3377af2d8b312;hp=15458a12b51593984d00637d701abad8d13fe377;hb=8b676e7d340fb8197824745eb387e1d3154e6f60;hpb=a4123fea556d6c362318212127e25846981ea190 diff --git a/src/update_image.c b/src/update_image.c index 15458a12..c76ae971 100644 --- a/src/update_image.c +++ b/src/update_image.c @@ -1197,7 +1197,8 @@ check_add_command(struct wimlib_update_command *cmd, WIMLIB_ADD_FLAG_WINCONFIG | WIMLIB_ADD_FLAG_WIMBOOT | WIMLIB_ADD_FLAG_NO_REPLACE | - WIMLIB_ADD_FLAG_TEST_FILE_EXCLUSION)) + WIMLIB_ADD_FLAG_TEST_FILE_EXCLUSION | + WIMLIB_ADD_FLAG_SNAPSHOT)) return WIMLIB_ERR_INVALID_PARAM; bool is_entire_image = WIMLIB_IS_WIM_ROOT_PATH(cmd->add.wim_target_path); @@ -1211,7 +1212,7 @@ check_add_command(struct wimlib_update_command *cmd, #endif #ifdef __WIN32__ - /* Check for flags not supported on Windows */ + /* Check for flags not supported on Windows. */ if (add_flags & WIMLIB_ADD_FLAG_UNIX_DATA) { ERROR("Capturing UNIX-specific data is not supported on Windows"); return WIMLIB_ERR_UNSUPPORTED; @@ -1220,6 +1221,15 @@ check_add_command(struct wimlib_update_command *cmd, ERROR("Dereferencing symbolic links is not supported on Windows"); return WIMLIB_ERR_UNSUPPORTED; } +#else + /* Check for flags only supported on Windows. */ + + /* Currently, SNAPSHOT means Windows VSS. In the future, it perhaps + * could be implemented for other types of snapshots, such as btrfs. */ + if (add_flags & WIMLIB_ADD_FLAG_SNAPSHOT) { + ERROR("Snapshot mode is only supported on Windows (VSS)"); + return WIMLIB_ERR_UNSUPPORTED; + } #endif /* VERBOSE implies EXCLUDE_VERBOSE */