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

Re: [PATCH 0/11] Miscellaneous MinGW port fallout

From
Junio C Hamano <gitster@pobox.com>
Date
Nov 14, 2007, 11:02 UTC
Message-ID
<7vir45hyyn.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<1194984306-3181-1-git-send-email-johannes.sixt@telecom.at>
Johannes Sixt <johannes.sixt@telecom.at> writes:
> This is a series of smallish, unrelated changes that were necessary
> for the MinGW port.
I was _VERY_ afraid of reviewing this series.
Show 5 quoted lines
> [PATCH 05/11] Use is_absolute_path() in sha1_file.c.
> [PATCH 06/11] Move #include <sys/select.h> and <sys/ioctl.h> to
> 	git-compat-util.h.
>
> These two are certainly undisputed.

Except on esoteric/broken systems there might be some dependency on the order the system include files are included, so 06/11 needs some testing. But it is a change in the right direction.

> [PATCH 07/11] builtin run_command: do not exit with -1.
>
> Replaces exit(-1) by exit(255). I don't know if this has any bad
> consequences on *nix.

Linux manual page says "the value of status & 0377 is returned to the parent", which agrees with POSIX's "only the least significant 8 bits(that is, status & 0377) shall be available to a waiting parent process". So I think we are safe on conforming platforms.

> [PATCH 08/11] Close files opened by lock_file() before unlinking.
>
> This one was authored by Dscho. It is a definite MUST on Windows.

This was something we've talked about doing a few times on the list but did not. It is good that this saw some testing in the field, as it is easy to get wrong while moving the call site of close(2) around.

Show 7 quoted lines
> [PATCH 09/11] Allow a relative builtin template directory.
> [PATCH 10/11] Introduce git_etc_gitconfig() that encapsulates access
> 	of ETC_GITCONFIG.
> [PATCH 11/11] Allow ETC_GITCONFIG to be a relative path.
>
> These need probably some discussion. They avoid that $(prefix) is
> hardcoded and so allows that an arbitrary installation directory.

I had to worry a bit about bootstrapping issues in 11/11. We need to ensure that anybody who wants to read the configuration data first does setup_path() because git_exec_path() reads from argv_exec_path and setup_path() is what assigns to that variable.

But other than that and 08/11, I found everything is trivially correct and it was a pleasant read.

Thanks.
Previous: Junio C HamanoNext: Johannes Schindelin
Message 32 of 35 in “Miscellaneous MinGW port fallout”
  1. 0/11 Miscellaneous MinGW port falloutJohannes Sixt, Nov 13, 2007
  2. 01/11 t5300-pack-object.sh: Split the big verify-pack test into smaller parts.Johannes Sixt, Nov 13, 2007
  3. 02/11 t7501-commit.sh: Not all seds understand option -iJohannes Sixt, Nov 13, 2007
  4. 03/11 t5302-pack-index: Skip tests of 64-bit offsets if necessary.Johannes Sixt, Nov 13, 2007
  5. 04/11 Skip t3902-quoted.sh if the file system does not support funny names.Johannes Sixt, Nov 13, 2007
  6. 05/11 Use is_absolute_path() in sha1_file.c.Johannes Sixt, Nov 13, 2007
  7. 06/11 Move #include <sys/select.h> and <sys/ioctl.h> to git-compat-util.h.Johannes Sixt, Nov 13, 2007
  8. 07/11 builtin run_command: do not exit with -1.Johannes Sixt, Nov 13, 2007
  9. 08/11 Close files opened by lock_file() before unlinking.Johannes Sixt, Nov 13, 2007
  10. 09/11 Allow a relative builtin template directory.Johannes Sixt, Nov 13, 2007
  11. 10/11 Introduce git_etc_gitconfig() that encapsulates access of ETC_GITCONFIG.Johannes Sixt, Nov 13, 2007
  12. 11/11 Allow ETC_GITCONFIG to be a relative path.Johannes Sixt, Nov 13, 2007
  13. Steffen ProhaskaNov 15, 2007
  14. Johannes SixtNov 15, 2007
  15. Steffen ProhaskaNov 15, 2007
  16. Johannes SixtNov 15, 2007
  17. Steffen ProhaskaNov 15, 2007
  18. Johannes SchindelinNov 13, 2007
  19. Johannes SixtNov 13, 2007
  20. Johannes SchindelinNov 13, 2007
  21. Johannes SchindelinNov 13, 2007
  22. Johannes SchindelinNov 13, 2007
  23. Johannes SixtNov 13, 2007
  24. Johannes SchindelinNov 13, 2007
  25. Robin RosenbergNov 14, 2007
  26. Johannes SixtNov 13, 2007
  27. Junio C HamanoNov 13, 2007
  28. Johannes SixtNov 13, 2007
  29. Johannes SchindelinNov 13, 2007
  30. Johannes SixtNov 13, 2007
  31. Junio C HamanoNov 13, 2007
  32. Junio C HamanoNov 14, 2007
  33. Johannes SchindelinNov 14, 2007
  34. Junio C HamanoNov 14, 2007
  35. Johannes SchindelinNov 14, 2007

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.