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

Re: [PATCH] graph.c: fix padding

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
May 15, 2008, 08:50 UTC
Message-ID
<alpine.DEB.1.00.0805150947060.30431@racer>
In-Reply-To
<alpine.DEB.1.00.0805141522060.30431@racer>
Hi,
On Wed, 14 May 2008, Johannes Schindelin wrote:
Show 6 quoted lines
> There were two instances of "%*s" which want to be "%.*s" instead.
> 
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> ---
>  graph.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
I am a moron.

Remember when I implemented a custom strbuf_vaddf() implementation that did not suffer these workarounds we have for "broken vaddf()" on AIX and Windows?

Well, I completely forgot about it, but I still have it in my personal tree.

And this implementation did not support "%*s", since there was no user for it before the addition of the --graph stuff.

So I have this in my tree now instead of the "fix" I am replying to:

-- snipsnap -- [PATCH] strbuf_vaddf(): support %*s, too

The recent addition of graph.c broke things with our custom implementation of strbuf_vaddf(), because "%*s" was not yet supported (because it did not have any users before).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 strbuf.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/strbuf.c b/strbuf.c
index 466f999..8c11f15 100644
--- a/strbuf.c
+++ b/strbuf.c
@@ -155,6 +155,12 @@ void strbuf_vaddf(struct strbuf *sb, const char *fmt, va_list ap)
 			fill = *p++;
 		if (isdigit(*p))
 			size = (int)strtol(p, &p, 10);
+		else if (*p == '*') {
+			size = va_arg(ap, int);
+			if (!fill)
+				fill = ' ';
+			p++;
+		}
 		else if (!prefixcmp(p, ".*")) {
 			max_size = va_arg(ap, int);
 			p += 2;
-- 
1.5.5.1.375.g1becb
Previous: Johannes Schindelin
Message 2 of 2 in “graph.c: fix padding”
  1. graph.c: fix paddingJohannes Schindelin, May 14, 2008
  2. Johannes SchindelinMay 15, 2008

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.