Skip to contentSkip to conversation

mingw: check that the file attributes are valid

PATCH Superseded Rose via GitGitGadget 1 participant 4 messages Dec 22, 2022 – Dec 18, 2024

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 mingw: check that the file attributes are valid

From: Seija Kijin <[email protected]>

If the attributes are invalid, return an error.

---
mingw: check that the file attributes are valid

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1413%2FAtariDreams%2Fset-hidden-flag-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1413/AtariDreams/set-hidden-flag-v1
Pull-Request: https://github.com/git/git/pull/1413

 compat/mingw.c | 5 +++++
 1 file changed, 5 insertions(+)
compat/mingw.c +5 -0
index d614f156df1..71a039cdd7c 100644
@@ -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: 7c2ef319c52c4997256f5807564523dfd4acdfc7

Signature · 1 line
gitgitgadget
#1 lore raw

PATCH v2 1/1 mingw: check that the file attributes are valid

From: Seija Kijin <[email protected]>

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

---
mingw: check that the file attributes are valid

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1413%2FAtariDreams%2Fset-hidden-flag-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1413/AtariDreams/set-hidden-flag-v2
Pull-Request: https://github.com/git/git/pull/1413

Range-diff vs v1:

1: d2992745f3f ! 1: f1cc7d9a98b mingw: check that the file attributes are valid
@@ Metadata
## Commit message ##
mingw: check that the file attributes are valid

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

 compat/mingw.c | 5 +++++
 1 file changed, 5 insertions(+)
compat/mingw.c +5 -0
index af397e68a1d..01bafa01e92 100644
@@ -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

Signature · 1 line
gitgitgadget
#2 lore raw

PATCH v3 1/1 mingw: check that the file attributes are valid before modifying them

From: Seija Kijin <[email protected]>

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

---
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 <[email protected]>

## 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(+)
compat/mingw.c +5 -0
index af397e68a1d..01bafa01e92 100644
@@ -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

Signature · 1 line
gitgitgadget
#3 lore raw

PATCH v4 1/1 mingw: check that the file attributes are valid before modifying them

From: Seija Kijin <[email protected]>

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

---
mingw: check that the file attributes are valid before modifying them

Thanks for taking the time to contribute to Git! Please be advised that the Git community does not use github.com for their contributions. Instead, we use a mailing list ([email protected]) for code submissions, code reviews, and bug reports. Nevertheless, you can use GitGitGadget (https://gitgitgadget.github.io/) to conveniently send your Pull Requests commits to our mailing list.

Please read the "guidelines for contributing" linked above!

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1413%2FAreaZR%2Fset-hidden-flag-v4
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1413/AreaZR/set-hidden-flag-v4
Pull-Request: https://github.com/git/git/pull/1413

Range-diff vs v3:

1: 0cbe8bce617 = 1: 0fed7ade880 mingw: check that the file attributes are valid before modifying them

 compat/mingw.c | 5 +++++
 1 file changed, 5 insertions(+)
compat/mingw.c +5 -0
index 63f36c893bf..7f52a4362fe 100644
@@ -446,6 +446,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: 063bcebf0c917140ca0e705cbe0fdea127e90086

Signature · 1 line
gitgitgadget