diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-11-25 09:59:10 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-11-25 09:59:10 +0400 |
commit | d45ea33ff14b7feaae29fe992b4d20cb96a1f48e (patch) | |
tree | 3049c37522926335d8c70ab46e7c132ac5040b3d /source/blender/blenkernel/intern | |
parent | 8cb02561a90bffa019cece9a4976ea98363c5b75 (diff) |
Fix T37591: 'Extensions' option ignored for movies.
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r-- | source/blender/blenkernel/intern/writeavi.c | 13 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/writeffmpeg.c | 31 |
2 files changed, 30 insertions, 14 deletions
diff --git a/source/blender/blenkernel/intern/writeavi.c b/source/blender/blenkernel/intern/writeavi.c index ff6212f6b09..1d29ef70d8b 100644 --- a/source/blender/blenkernel/intern/writeavi.c +++ b/source/blender/blenkernel/intern/writeavi.c @@ -132,9 +132,16 @@ static void filepath_avi(char *string, RenderData *rd) BLI_make_existing_file(string); - if (!BLI_testextensie(string, ".avi")) { - BLI_path_frame_range(string, rd->sfra, rd->efra, 4); - strcat(string, ".avi"); + if (rd->scemode & R_EXTENSION) { + if (!BLI_testextensie(string, ".avi")) { + BLI_path_frame_range(string, rd->sfra, rd->efra, 4); + strcat(string, ".avi"); + } + } + else { + if (BLI_path_frame_check_chars(string)) { + BLI_path_frame_range(string, rd->sfra, rd->efra, 4); + } } } diff --git a/source/blender/blenkernel/intern/writeffmpeg.c b/source/blender/blenkernel/intern/writeffmpeg.c index bcf5e712eff..ff4300c34e9 100644 --- a/source/blender/blenkernel/intern/writeffmpeg.c +++ b/source/blender/blenkernel/intern/writeffmpeg.c @@ -1023,23 +1023,32 @@ void BKE_ffmpeg_filepath_get(char *string, RenderData *rd) sprintf(autosplit, "_%03d", ffmpeg_autosplit_count); } - while (*fe) { - if (BLI_strcasecmp(string + strlen(string) - strlen(*fe), *fe) == 0) { - break; + if (rd->scemode & R_EXTENSION) { + while (*fe) { + if (BLI_strcasecmp(string + strlen(string) - strlen(*fe), *fe) == 0) { + break; + } + fe++; } - fe++; - } - if (*fe == NULL) { - strcat(string, autosplit); + if (*fe == NULL) { + strcat(string, autosplit); - BLI_path_frame_range(string, rd->sfra, rd->efra, 4); - strcat(string, *exts); + BLI_path_frame_range(string, rd->sfra, rd->efra, 4); + strcat(string, *exts); + } + else { + *(string + strlen(string) - strlen(*fe)) = 0; + strcat(string, autosplit); + strcat(string, *fe); + } } else { - *(string + strlen(string) - strlen(*fe)) = 0; + if (BLI_path_frame_check_chars(string)) { + BLI_path_frame_range(string, rd->sfra, rd->efra, 4); + } + strcat(string, autosplit); - strcat(string, *fe); } } |