mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Add xreallocarray and remove nmemb argument from xrealloc.
This commit is contained in:
		
							
								
								
									
										17
									
								
								xmalloc.c
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								xmalloc.c
									
									
									
									
									
								
							@@ -68,7 +68,20 @@ xmalloc(size_t size)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void *
 | 
			
		||||
xrealloc(void *oldptr, size_t nmemb, size_t size)
 | 
			
		||||
xrealloc(void *oldptr, size_t newsize)
 | 
			
		||||
{
 | 
			
		||||
	void	*newptr;
 | 
			
		||||
 | 
			
		||||
	if (newsize == 0)
 | 
			
		||||
		fatalx("zero size");
 | 
			
		||||
	if ((newptr = realloc(oldptr, newsize)) == NULL)
 | 
			
		||||
		fatal("xrealloc failed");
 | 
			
		||||
 | 
			
		||||
	return (newptr);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void *
 | 
			
		||||
xreallocarray(void *oldptr, size_t nmemb, size_t size)
 | 
			
		||||
{
 | 
			
		||||
	size_t	 newsize = nmemb * size;
 | 
			
		||||
	void	*newptr;
 | 
			
		||||
@@ -78,7 +91,7 @@ xrealloc(void *oldptr, size_t nmemb, size_t size)
 | 
			
		||||
	if (SIZE_MAX / nmemb < size)
 | 
			
		||||
		fatalx("nmemb * size > SIZE_MAX");
 | 
			
		||||
	if ((newptr = realloc(oldptr, newsize)) == NULL)
 | 
			
		||||
		fatal("xrealloc failed");
 | 
			
		||||
		fatal("xreallocarray failed");
 | 
			
		||||
 | 
			
		||||
	return (newptr);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user