Thread: pgsql: Fix lstat() for broken junction points on Windows.
Fix lstat() for broken junction points on Windows. When using junction points to emulate symlinks on Windows, one edge case was not handled correctly by commit c5cb8f3b: if a junction point is broken (pointing to a non-existent path), we'd report ENOENT. This doesn't break any known use case, but was noticed while developing a test suite for these functions and is fixed here for completeness. Also add translation ERROR_CANT_RESOLVE_FILENAME -> ENOENT, as that is one of the errors Windows can report for some kinds of broken paths. Discussion: https://postgr.es/m/CA%2BhUKG%2BajSQ_8eu2AogTncOnZ5me2D-Cn66iN_-wZnRjLN%2Bicg%40mail.gmail.com (cherry picked from commit 387803d81d6256fcb60b9192bb5b00042442b4e3) Author: Thomas Munro <tmunro@postgresql.org> Author: Alexandra Wang <alexandra.wang.oss@gmail.com> Branch ------ REL_13_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/bb509a464e3e59e13b8869665fe5eccc98f83b39 Author: Thomas Munro <tmunro@postgresql.org> Modified Files -------------- src/port/win32error.c | 6 ++++++ src/port/win32stat.c | 27 ++++++++++++++++++++++----- 2 files changed, 28 insertions(+), 5 deletions(-)