From 6d257e732b358ee601a114fe3d1640a46317e554 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Tue, 29 Mar 2016 10:40:08 -0400
Subject: [PATCH] Fix zic for Windows.

The new coding of dolink() is dependent on link() returning an on-point
errno when it fails; but the quick-hack implementation of link() that
we'd put in for Windows didn't bother with setting errno.  Fix that.

Analysis and patch by Christian Ullrich.
---
 src/timezone/zic.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/timezone/zic.c b/src/timezone/zic.c
index 8d4347a47a3..f9cbac9f006 100644
--- a/src/timezone/zic.c
+++ b/src/timezone/zic.c
@@ -3485,7 +3485,10 @@ int
 link(const char *oldpath, const char *newpath)
 {
 	if (!CopyFile(oldpath, newpath, false))
+	{
+		_dosmaperr(GetLastError());
 		return -1;
+	}
 	return 0;
 }
 #endif
-- 
GitLab