perf tools: remove xstrndup, xmalloc, xzalloc
All the functions that call this can handle the equivalent, non panic'ing wrapped routines. Cc: Frédéric Weisbecker <fweisbec@gmail.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Tom Zanussi <tzanussi@gmail.com> LKML-Reference: <new-submission> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
		
					parent
					
						
							
								8a7ddad8e7
							
						
					
				
			
			
				commit
				
					
						151f85a471
					
				
			
		
					 4 changed files with 3 additions and 51 deletions
				
			
		|  | @ -53,8 +53,8 @@ const char *perf_extract_argv0_path(const char *argv0) | |||
| 		slash--; | ||||
| 
 | ||||
| 	if (slash >= argv0) { | ||||
| 		argv0_path = xstrndup(argv0, slash - argv0); | ||||
| 		return slash + 1; | ||||
| 		argv0_path = strndup(argv0, slash - argv0); | ||||
| 		return argv0_path ? slash + 1 : NULL; | ||||
| 	} | ||||
| 
 | ||||
| 	return argv0; | ||||
|  |  | |||
|  | @ -152,5 +152,5 @@ char *strip_path_suffix(const char *path, const char *suffix) | |||
| 
 | ||||
| 	if (path_len && !is_dir_sep(path[path_len - 1])) | ||||
| 		return NULL; | ||||
| 	return xstrndup(path, chomp_trailing_dir_sep(path, path_len)); | ||||
| 	return strndup(path, chomp_trailing_dir_sep(path, path_len)); | ||||
| } | ||||
|  |  | |||
|  | @ -179,16 +179,8 @@ static inline char *gitstrchrnul(const char *s, int c) | |||
|  * Wrappers: | ||||
|  */ | ||||
| extern char *xstrdup(const char *str); | ||||
| extern void *xmalloc(size_t size) __attribute__((weak)); | ||||
| extern char *xstrndup(const char *str, size_t len); | ||||
| extern void *xrealloc(void *ptr, size_t size) __attribute__((weak)); | ||||
| 
 | ||||
| static inline void *xzalloc(size_t size) | ||||
| { | ||||
| 	void *buf = xmalloc(size); | ||||
| 
 | ||||
| 	return memset(buf, 0, size); | ||||
| } | ||||
| 
 | ||||
| static inline void *zalloc(size_t size) | ||||
| { | ||||
|  |  | |||
|  | @ -23,46 +23,6 @@ char *xstrdup(const char *str) | |||
| 	return ret; | ||||
| } | ||||
| 
 | ||||
| void *xmalloc(size_t size) | ||||
| { | ||||
| 	void *ret = malloc(size); | ||||
| 	if (!ret && !size) | ||||
| 		ret = malloc(1); | ||||
| 	if (!ret) { | ||||
| 		release_pack_memory(size, -1); | ||||
| 		ret = malloc(size); | ||||
| 		if (!ret && !size) | ||||
| 			ret = malloc(1); | ||||
| 		if (!ret) | ||||
| 			die("Out of memory, malloc failed"); | ||||
| 	} | ||||
| #ifdef XMALLOC_POISON | ||||
| 	memset(ret, 0xA5, size); | ||||
| #endif | ||||
| 	return ret; | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * xmemdupz() allocates (len + 1) bytes of memory, duplicates "len" bytes of | ||||
|  * "data" to the allocated memory, zero terminates the allocated memory, | ||||
|  * and returns a pointer to the allocated memory. If the allocation fails, | ||||
|  * the program dies. | ||||
|  */ | ||||
| static void *xmemdupz(const void *data, size_t len) | ||||
| { | ||||
| 	char *p = xmalloc(len + 1); | ||||
| 	memcpy(p, data, len); | ||||
| 	p[len] = '\0'; | ||||
| 	return p; | ||||
| } | ||||
| 
 | ||||
| char *xstrndup(const char *str, size_t len) | ||||
| { | ||||
| 	char *p = memchr(str, '\0', len); | ||||
| 
 | ||||
| 	return xmemdupz(str, p ? (size_t)(p - str) : len); | ||||
| } | ||||
| 
 | ||||
| void *xrealloc(void *ptr, size_t size) | ||||
| { | ||||
| 	void *ret = realloc(ptr, size); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Arnaldo Carvalho de Melo
				Arnaldo Carvalho de Melo