bpo-32903: Fix a memory leak in os.chdir() on Windows (GH-5801) (#5945)

(cherry picked from commit 3e197c7a6740d564ad52fb7901c07d5ff49460f5)

Co-authored-by: Alexey Izbyshev <izbyshev@users.noreply.github.com>
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 130e8c1..f6144a1 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -1529,15 +1529,15 @@
             return FALSE;
         }
     }
-    if (wcsncmp(new_path, L"\\\\", 2) == 0 ||
-        wcsncmp(new_path, L"//", 2) == 0)
-        /* UNC path, nothing to do. */
-        return TRUE;
-    env[1] = new_path[0];
-    result = SetEnvironmentVariableW(env, new_path);
+    int is_unc_like_path = (wcsncmp(new_path, L"\\\\", 2) == 0 ||
+                            wcsncmp(new_path, L"//", 2) == 0);
+    if (!is_unc_like_path) {
+        env[1] = new_path[0];
+        result = SetEnvironmentVariableW(env, new_path);
+    }
     if (new_path != path_buf)
         PyMem_RawFree(new_path);
-    return result;
+    return result ? TRUE : FALSE;
 }
 #endif