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

Re: [PATCH 03/14] Define SNPRINTF_SIZE_CORR=1 for Microsoft Visual C++

From
Marius Storm-Olsen <mstormo@gmail.com>
Date
Aug 22, 2009, 11:25 UTC
Message-ID
<18cd41840908220425n7a4abebfk555a2cb6421c48aa@mail.gmail.com>
In-Reply-To
<7vfxbkbyvw.fsf@alter.siamese.dyndns.org>
On Sat, Aug 22, 2009 at 12:11 AM, Junio C Hamano <gitster@pobox.com> wrote:
Show 27 quoted lines
> Johannes Sixt <j6t@kdbg.org> writes:
>
> > Not quite. The parameter *is* the size of the buffer and vsnprintf does
> not
> > write beyond the buffer. However, it has the awkward behavior that if the
> > buffer is too short by exactly one byte...
>
> Thanks; I was fooled by the leading comment.  How about ...
>
>  compat/snprintf.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/compat/snprintf.c b/compat/snprintf.c
> index 6c0fb05..4d07087 100644
> --- a/compat/snprintf.c
> +++ b/compat/snprintf.c
> @@ -3,7 +3,8 @@
>  /*
>  * The size parameter specifies the available space, i.e. includes
>  * the trailing NUL byte; but Windows's vsnprintf expects the
> - * number of characters to write without the trailing NUL.
> + * number of characters to write, and does not necessarily write the
> + * trailing NUL.
>  */
>  #ifndef SNPRINTF_SIZE_CORR
>  #if defined(__MINGW32__) && defined(__GNUC__) && __GNUC__ < 4
>

Agreed. If you'd like, I'll squash that into the change, and make the commit msg more clear.

-- .marius

Previous: Junio C HamanoNext: Marius Storm-Olsen
Message 40 of 49 in “Build git with MSVC”
  1. 00/14 Build git with MSVCMarius Storm-Olsen, Aug 21, 2009
  2. 01/14 Fix non-constant array creationMarius Storm-Olsen, Aug 21, 2009
  3. 02/14 Avoid declaration after statementMarius Storm-Olsen, Aug 21, 2009
  4. 03/14 Define SNPRINTF_SIZE_CORR=1 for Microsoft Visual C++Marius Storm-Olsen, Aug 21, 2009
  5. 04/14 Add define guards to compat/win32.hMarius Storm-Olsen, Aug 21, 2009
  6. 05/14 Change regerror() declaration from K&R style to ANSI C (C89)Marius Storm-Olsen, Aug 21, 2009
  7. 06/14 mingw.c: Use the O_BINARY flag to open filesMarius Storm-Olsen, Aug 21, 2009
  8. 07/14 Fix __stdcall/WINAPI placement and function prototypeMarius Storm-Olsen, Aug 21, 2009
  9. 08/14 Test for WIN32 instead of __MINGW32_Marius Storm-Olsen, Aug 21, 2009
  10. 09/14 Avoid including windows.h in winansi.c for MSVC buildMarius Storm-Olsen, Aug 21, 2009
  11. 10/14 Add empty header files for MSVC portMarius Storm-Olsen, Aug 21, 2009
  12. 11/14 Add MinGW header files to build git with MSVCMarius Storm-Olsen, Aug 21, 2009
  13. 12/14 Add platform files for MSVC portingMarius Storm-Olsen, Aug 21, 2009
  14. 13/14 Add MSVC project filesMarius Storm-Olsen, Aug 21, 2009
  15. 14/14 Add README and gitignore file for MSVC buildMarius Storm-Olsen, Aug 21, 2009
  16. Thiago FarinaAug 23, 2009
  17. Reece DunnAug 23, 2009
  18. Marius Storm-OlsenAug 23, 2009
  19. Thiago FarinaAug 23, 2009
  20. Marius Storm-OlsenAug 24, 2009
  21. Frank LiAug 25, 2009
  22. Thiago FarinaAug 25, 2009
  23. Frank LiAug 27, 2009
  24. Thiago FarinaAug 27, 2009
  25. Erik Faye-LundSep 7, 2009
  26. Junio C HamanoAug 21, 2009
  27. Reece DunnAug 21, 2009
  28. Marius Storm-OlsenAug 22, 2009
  29. Paolo BonziniAug 28, 2009
  30. Johannes SixtAug 21, 2009
  31. Marius Storm-OlsenAug 21, 2009
  32. Frank LiAug 21, 2009
  33. 05/14 Change regerror() definition from K&R style to ANSI C (C89)Marius Storm-Olsen, Aug 21, 2009
  34. Frank LiAug 22, 2009
  35. Erik Faye-LundAug 24, 2009
  36. Junio C HamanoAug 21, 2009
  37. Johan 't HartAug 21, 2009
  38. Johannes SixtAug 21, 2009
  39. Junio C HamanoAug 21, 2009
  40. Marius Storm-OlsenAug 22, 2009
  41. Marius Storm-OlsenAug 22, 2009
  42. Erik Faye-LundAug 21, 2009
  43. Marius Storm-OlsenAug 21, 2009
  44. Janos LaubeAug 21, 2009
  45. Marius Storm-OlsenAug 21, 2009
  46. Johan 't HartAug 21, 2009
  47. Erik Faye-LundAug 22, 2009
  48. Junio C HamanoAug 21, 2009
  49. Junio C HamanoAug 21, 2009

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.