unify functions to get and strip file extensions#17531
Open
guidocella wants to merge 8 commits intompv-player:masterfrom
Open
unify functions to get and strip file extensions#17531guidocella wants to merge 8 commits intompv-player:masterfrom
guidocella wants to merge 8 commits intompv-player:masterfrom
Conversation
Member
|
Why do we even have duplicated this functionally? Why not call |
Contributor
Author
|
Yeah I wanted to make one wrap the other afterwards since only mp_splitpath handles multiple leading dots and backslash separators. Or we can just leave only the bstr functions. |
Member
Yes, that works. Unless it makes it complicated on calls, then can have simple wrapper. |
Contributor
Author
|
Actually |
49d817e to
bc8323f
Compare
bc8323f to
06d2668
Compare
N-R-K
suggested changes
Mar 27, 2026
06d2668 to
018f1e5
Compare
N-R-K
suggested changes
Mar 27, 2026
misc/path_utils.c
Outdated
| #if HAVE_DOS_PATHS | ||
| if (!mp_is_url(path)) { | ||
| separator_pos = bstrrchr(path, '\\'); | ||
| if (separator_pos < 0) |
f35f5d0 to
0b885f7
Compare
N-R-K
suggested changes
Mar 27, 2026
0b885f7 to
d5361e1
Compare
Because it is simpler than mp_splitext(), and will allow removing mp_splitext().
d5361e1 to
9e95536
Compare
This will be used by bstr_get_ext() and bstr_split_ext() without allocating memory.
This will be used by bstr_get_ext() and bstr_strip_ext() without allocating memory. Unlike in the C string version mp_assert(path.start) is not called because it is not needed, and would make TEST_LANG_GUESS(NULL, "", -1, 0) in test/language.c fail.
Move bstr_strip_ext() and bstr_get_ext() to path_utils.c making them use split_ext(), which is better than the previous bstr.c implementation because it doesn't consider . in the dirname or at the start of basenames.
This will allow removing mp_strip_ext().
It is no longer used.
This will allow removing mp_splitext().
It is no longer used.
9e95536 to
126adbd
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
video/out/vo_gpu_next: use bstr_strip_ext()
This is simpler and will allow making mp_splitext() static.
misc/path_utils: add mp_get_ext()
This is easier to understand than mp_splitext(s, NULL);
various: use mp_get_ext()
misc/path_utils: make mp_splitpath() static
It is no longer used anywhere. Also rename it to mp_split_path().