if ((ret = get_full_path_name(ppath_w)) < 0) return ret;
/* What .NET does at this point is to call PathHelper.TryExpandShortFileName() *incasethepathcontainsa'~'character. *Wedon'tneedtodothisaswedon'tneedtonormalizethefilename *forpresentation,andtheextendedpathprefixworkswith8.3path *componentsaswell
*/ return0;
}
/* We're skipping the check IsPartiallyQualified() because
* we expect to have called GetFullPathNameW() already. */ if (len < 2 || path_is_extended(*ppath_w) || path_is_device_path(*ppath_w)) { return0;
}
if (path_w[0] == L'\\' && path_w[1] == L'\\') { /* unc_prefix length is 8 plus 1 for terminating zeros,
* we subtract 2 for the leading '\\' of the original path */
temp_w = (wchar_t *)av_calloc(len - 2 + 8 + 1, sizeof(wchar_t)); if (!temp_w) {
errno = ENOMEM; return -1;
}
wcscpy(temp_w, unc_prefix);
wcscat(temp_w, path_w + 2);
} else { // The length of extended_path_prefix is 4 plus 1 for terminating zeros
temp_w = (wchar_t *)av_calloc(len + 4 + 1, sizeof(wchar_t)); if (!temp_w) {
errno = ENOMEM; return -1;
}
wcscpy(temp_w, extended_path_prefix);
wcscat(temp_w, path_w);
}
if ((ret = utf8towchar(path, ppath_w)) < 0) return ret;
if (path_is_extended(*ppath_w)) { /* Paths prefixed with '\\?\' or \??\' are considered normalized by definition. *Windowsdoesn'tnormalizethosepathsandneithershouldwe.
*/ return0;
}
/* see .NET6: PathInternal.EnsureExtendedPrefixIfNeeded() *https://github.com/dotnet/runtime/blob/9260c249140ef90b4299d0fe1aa3037e25228518/src/libraries/Common/src/System/IO/PathInternal.Windows.cs#L92
*/
len = wcslen(*ppath_w); if (len >= MAX_PATH) { if ((ret = add_extended_prefix(ppath_w)) < 0) {
av_freep(ppath_w); return ret;
}
}
return0;
}
#endif
#endif/* AVUTIL_WCHAR_FILENAME_H */
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.3Bemerkung:
(vorverarbeitet am 2026-09-30)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.