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

RE: [PATCH v2 1/2] pkt-line: add packet_writel() and packet_read_line_gently()

From
Ben Peart <ben.peart@microsoft.com>
Date
Mar 30, 2017, 16:01 UTC
Message-ID
<BL2PR03MB3237F4B369C0E00168D7291F4340@BL2PR03MB323.namprd03.prod.outlook.com>
In-Reply-To
<a5e259bd-d994-6ddb-9dae-43531ee2e875@web.de>
Show 7 quoted lines
> From: Torsten Bögershausen [mailto:tboegi@web.de]
> 
> 
> Does this work ?
> I would have expected
> packet_writel(fd, "line one", "line two", "line n"), NULL;
> 
No, that's actually not valid C syntax.
Show 11 quoted lines
> >
> > which requires the use of variable number of arguments.  With your
> proposal that convenience is lost as you have to create an array of strings
> and pass that instead.  The usage just isn't as simple as the current model.
> >
> What is wrong with
> 
> int packet_write_fmt_gently(int fd, const char *fmt, ...) and we use it like
> this:
> if packet_write_fmt_gently(fd, "%s%s%s", "line one", "line two", "line n")
> 
Packets are not just strings; see pkt-line.h for more details but basically they are a length packet, followed by the data (in this particular case a string).  The packet_writel function is a convenience function to write out a variable number of packetized strings followed by a flush packet.  You're sample above would simply concatenate the three strings and then write a single packet.  A very different outcome. :)
Show 6 quoted lines
> 
> 
> (Or do we need another one like)
> int packet_write_fmt_gently_flush(int fd, const char *fmt, ...)
> 
> Sorry if I am lost here
Previous: Torsten BögershausenNext: Torsten Bögershausen
Message 14 of 15 in “Refactor the filter process code into a reusable module”
  1. 0/2 Refactor the filter process code into a reusable moduleBen Peart, Mar 24, 2017
  2. 2/2 sub-process: refactor the filter process code into a reusable moduleBen Peart, Mar 24, 2017
  3. Jonathan TanMar 27, 2017
  4. Ben PeartMar 27, 2017
  5. 1/4 t7800: remove whitespace before redirectBen Peart, Mar 24, 2017
  6. Ben PeartMar 24, 2017
  7. 2/4 t7800: cleanup cruft left behind by testsBen Peart, Mar 24, 2017
  8. 3/4 difftool: handle modified symlinks in dir-diff modeBen Peart, Mar 24, 2017
  9. 4/4 Git 2.12.1Ben Peart, Mar 24, 2017
  10. 1/2 pkt-line: add packet_writel() and packet_read_line_gently()Ben Peart, Mar 24, 2017
  11. Torsten BögershausenMar 25, 2017
  12. Ben PeartMar 27, 2017
  13. Torsten BögershausenMar 30, 2017
  14. Ben PeartMar 30, 2017
  15. Torsten BögershausenMar 30, 2017

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.