1
mirror of https://github.com/mpv-player/mpv synced 2024-11-18 21:16:10 +01:00
mpv/misc
Akemi 8bbdecea83 osx: consistent normalisation when searching for external files
several unicode characters can be encoded in two different ways, either
in a precomposed (NFC) or decomposed (NFD) representation. everywhere
besides on macOS, specifically HFS+, precomposed strings are being used.
furthermore on macOS we can get either precomposed or decomposed
strings, for example when not HFS+ formatted volumes are used. that can
be the case for network mounted devices (SMB, NFS) or optical/removable
devices (UDF). this can lead to an inequality of actual equal strings,
which can happen when comparing strings from different sources, like the
command line or filesystem. this makes it mainly a problem on macOS
systems.

one case that can potential break is the sub-auto option. to prevent
that we convert the search string as well as the string we search in to
the same normalised representation, specifically we use the decomposed
form which is used anywhere else.

this could potentially be a problem on other platforms too, though the
potential of occurring is very minor. for those platforms we don't
convert anything and just fallback to the input.

Fixes #4016
2017-02-02 16:21:04 +01:00
..
bstr.c bstr: change to LGPL 2016-12-11 18:09:44 +01:00
bstr.h bstr: change to LGPL 2016-12-11 18:09:44 +01:00
charset_conv.c osx: consistent normalisation when searching for external files 2017-02-02 16:21:04 +01:00
charset_conv.h osx: consistent normalisation when searching for external files 2017-02-02 16:21:04 +01:00
ctype.h Audit and replace all ctype.h uses 2014-07-01 23:11:08 +02:00
dispatch.c player: don't enter playloop for client API requests 2016-09-16 20:24:52 +02:00
dispatch.h player: use better way to wait for input and dispatching commands 2016-09-16 14:49:23 +02:00
json.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
json.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
node.c misc: add some annoying mpv_node helpers 2016-08-28 19:39:05 +02:00
node.h misc: add some annoying mpv_node helpers 2016-08-28 19:39:05 +02:00
rendezvous.c Add Plan 9-style barriers 2014-07-26 20:29:48 +02:00
rendezvous.h Add Plan 9-style barriers 2014-07-26 20:29:48 +02:00
ring.c osdep: rename atomics.h to atomic.h 2016-09-07 11:26:25 +02:00
ring.h Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00