forked from blender/blender
index-of-nearest-104619 #2
@ -399,7 +399,7 @@ bool BKE_cachefile_filepath_get(const Main *bmain,
|
|||||||
const int frame = (int)BKE_cachefile_time_offset(cache_file, (double)ctime, fps);
|
const int frame = (int)BKE_cachefile_time_offset(cache_file, (double)ctime, fps);
|
||||||
|
|
||||||
char ext[32];
|
char ext[32];
|
||||||
BLI_path_frame_strip(r_filepath, ext);
|
BLI_path_frame_strip(r_filepath, ext, sizeof(ext));
|
||||||
BLI_path_frame(r_filepath, frame, frame_len);
|
BLI_path_frame(r_filepath, frame, frame_len);
|
||||||
BLI_path_extension_ensure(r_filepath, FILE_MAX, ext);
|
BLI_path_extension_ensure(r_filepath, FILE_MAX, ext);
|
||||||
|
|
||||||
|
@ -768,7 +768,7 @@ static void volume_filepath_get(const Main *bmain, const Volume *volume, char r_
|
|||||||
int path_frame, path_digits;
|
int path_frame, path_digits;
|
||||||
if (volume->is_sequence && BLI_path_frame_get(r_filepath, &path_frame, &path_digits)) {
|
if (volume->is_sequence && BLI_path_frame_get(r_filepath, &path_frame, &path_digits)) {
|
||||||
char ext[32];
|
char ext[32];
|
||||||
BLI_path_frame_strip(r_filepath, ext);
|
BLI_path_frame_strip(r_filepath, ext, sizeof(ext));
|
||||||
BLI_path_frame(r_filepath, volume->runtime.frame, path_digits);
|
BLI_path_frame(r_filepath, volume->runtime.frame, path_digits);
|
||||||
BLI_path_extension_ensure(r_filepath, FILE_MAX, ext);
|
BLI_path_extension_ensure(r_filepath, FILE_MAX, ext);
|
||||||
}
|
}
|
||||||
|
@ -416,7 +416,7 @@ bool BLI_path_frame_get(const char *path, int *r_frame, int *r_digits_len) ATTR_
|
|||||||
* So: `/some/path_123.jpeg`
|
* So: `/some/path_123.jpeg`
|
||||||
* Becomes: `/some/path_###` with `r_ext` set to `.jpeg`.
|
* Becomes: `/some/path_###` with `r_ext` set to `.jpeg`.
|
||||||
*/
|
*/
|
||||||
void BLI_path_frame_strip(char *path, char *r_ext) ATTR_NONNULL();
|
void BLI_path_frame_strip(char *path, char *r_ext, size_t ext_maxlen) ATTR_NONNULL();
|
||||||
/**
|
/**
|
||||||
* Check if we have '#' chars, usable for #BLI_path_frame, #BLI_path_frame_range
|
* Check if we have '#' chars, usable for #BLI_path_frame, #BLI_path_frame_range
|
||||||
*/
|
*/
|
||||||
|
@ -771,7 +771,7 @@ bool BLI_path_frame_get(const char *path, int *r_frame, int *r_digits_len)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void BLI_path_frame_strip(char *path, char *r_ext)
|
void BLI_path_frame_strip(char *path, char *r_ext, const size_t ext_maxlen)
|
||||||
{
|
{
|
||||||
*r_ext = '\0';
|
*r_ext = '\0';
|
||||||
if (*path == '\0') {
|
if (*path == '\0') {
|
||||||
@ -791,8 +791,7 @@ void BLI_path_frame_strip(char *path, char *r_ext)
|
|||||||
}
|
}
|
||||||
c++;
|
c++;
|
||||||
|
|
||||||
int suffix_length = file_len - (suffix - file);
|
BLI_strncpy(r_ext, suffix, ext_maxlen);
|
||||||
memcpy(r_ext, suffix, suffix_length + 1);
|
|
||||||
|
|
||||||
/* replace the number with the suffix and terminate the string */
|
/* replace the number with the suffix and terminate the string */
|
||||||
while (digits_len--) {
|
while (digits_len--) {
|
||||||
|
@ -655,7 +655,7 @@ TEST(path_util, SplitDirfile)
|
|||||||
char path[FILE_MAX]; \
|
char path[FILE_MAX]; \
|
||||||
char ext[FILE_MAX]; \
|
char ext[FILE_MAX]; \
|
||||||
BLI_strncpy(path, (input_path), FILE_MAX); \
|
BLI_strncpy(path, (input_path), FILE_MAX); \
|
||||||
BLI_path_frame_strip(path, ext); \
|
BLI_path_frame_strip(path, ext, sizeof(ext)); \
|
||||||
EXPECT_STREQ(path, expect_path); \
|
EXPECT_STREQ(path, expect_path); \
|
||||||
EXPECT_STREQ(ext, expect_ext); \
|
EXPECT_STREQ(ext, expect_ext); \
|
||||||
} \
|
} \
|
||||||
|
@ -1242,7 +1242,7 @@ void sequencer_image_seq_reserve_frames(
|
|||||||
char ext[PATH_MAX];
|
char ext[PATH_MAX];
|
||||||
char filename_stripped[PATH_MAX];
|
char filename_stripped[PATH_MAX];
|
||||||
/* Strip the frame from filename and substitute with `#`. */
|
/* Strip the frame from filename and substitute with `#`. */
|
||||||
BLI_path_frame_strip(filename, ext);
|
BLI_path_frame_strip(filename, ext, sizeof(ext));
|
||||||
|
|
||||||
for (int i = 0; i < len; i++, se++) {
|
for (int i = 0; i < len; i++, se++) {
|
||||||
BLI_strncpy(filename_stripped, filename, sizeof(filename_stripped));
|
BLI_strncpy(filename_stripped, filename, sizeof(filename_stripped));
|
||||||
|
Loading…
Reference in New Issue
Block a user