git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3] mingw: check that the file attributes are valid before modifying them

From
RGRose via GitGitGadget <gitgitgadget@gmail.com>
Date
Jan 8, 2023, 14:49 UTC
Message-ID
<pull.1413.v3.git.git.1673189354738.gitgitgadget@gmail.com>
In-Reply-To
<pull.1413.v2.git.git.1673189172832.gitgitgadget@gmail.com>
From: Seija Kijin <doremylover123@gmail.com>

If the attributes are invalid, return -1 to indicate an error.

Signed-off-by: Seija Kijin <doremylover123@gmail.com>
---
    mingw: check that the file attributes are valid before modifying them
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1413%2FAtariDreams%2Fset-hidden-flag-v3
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1413/AtariDreams/set-hidden-flag-v3
Pull-Request: https://github.com/git/git/pull/1413
Range-diff vs v2:
 1:  f1cc7d9a98b ! 1:  0cbe8bce617 mingw: check that the file attributes are valid
     @@ Metadata
      Author: Seija Kijin <doremylover123@gmail.com>
      
       ## Commit message ##
     -    mingw: check that the file attributes are valid
     +    mingw: check that the file attributes are valid before modifying them
      
          If the attributes are invalid, return -1
          to indicate an error.
 compat/mingw.c | 5 +++++
 1 file changed, 5 insertions(+)
diff --git a/compat/mingw.c b/compat/mingw.c
index af397e68a1d..01bafa01e92 100644
--- a/compat/mingw.c
+++ b/compat/mingw.c
@@ -435,6 +435,11 @@ static inline int needs_hiding(const char *path)
 static int set_hidden_flag(const wchar_t *path, int set)
 {
 	DWORD original = GetFileAttributesW(path), modified;
+	if (original == INVALID_FILE_ATTRIBUTES) {
+		errno = err_win_to_posix(GetLastError());
+		return -1;
+	}
+
 	if (set)
 		modified = original | FILE_ATTRIBUTE_HIDDEN;
 	else

base-commit: a38d39a4c50d1275833aba54c4dbdfce9e2e9ca1
-- 
gitgitgadget
Previous: Rose via GitGitGadgetNext: AreaZR via GitGitGadget
Message 3 of 4 in “mingw: check that the file attributes are valid”
  1. mingw: check that the file attributes are validRose via GitGitGadget, Dec 22, 2022
  2. mingw: check that the file attributes are validRose via GitGitGadget, Jan 8, 2023
  3. mingw: check that the file attributes are valid before modifying themRose via GitGitGadget, Jan 8, 2023
  4. mingw: check that the file attributes are valid before modifying themAreaZR via GitGitGadget, Dec 18, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.