mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 01:34:18 +00:00 
			
		
		
		
	Only have one asprintf implementation, that's likely to always work.
This commit is contained in:
		@@ -1,4 +1,4 @@
 | 
				
			|||||||
/* $Id: asprintf.c,v 1.5 2011-01-07 00:35:13 nicm Exp $ */
 | 
					/* $Id: asprintf.c,v 1.6 2011-01-21 20:03:18 nicm Exp $ */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * Copyright (c) 2006 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
					 * Copyright (c) 2006 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
				
			||||||
@@ -40,28 +40,6 @@ asprintf(char **ret, const char *format, ...)
 | 
				
			|||||||
	return (n);
 | 
						return (n);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifndef BROKEN_VSNPRINTF
 | 
					 | 
				
			||||||
int
 | 
					 | 
				
			||||||
vasprintf(char **ret, const char *format, va_list ap)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
	int	 n;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if ((n = vsnprintf(NULL, 0, format, ap)) < 0)
 | 
					 | 
				
			||||||
		goto error;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	*ret = xmalloc(n + 1);
 | 
					 | 
				
			||||||
	if ((n = vsnprintf(*ret, n + 1, format, ap)) < 0) {
 | 
					 | 
				
			||||||
		xfree(*ret);
 | 
					 | 
				
			||||||
		goto error;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return (n);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
error:
 | 
					 | 
				
			||||||
	*ret = NULL;
 | 
					 | 
				
			||||||
	return (-1);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#else
 | 
					 | 
				
			||||||
int
 | 
					int
 | 
				
			||||||
vasprintf(char **ret, const char *fmt, va_list ap)
 | 
					vasprintf(char **ret, const char *fmt, va_list ap)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -90,4 +68,3 @@ vasprintf(char **ret, const char *fmt, va_list ap)
 | 
				
			|||||||
		len *= 2;
 | 
							len *= 2;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user