Move buffer_is_binary() to xdiff-interface.h
We already have two instances where we want to determine if a buffer contains binary data as opposed to text. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
							parent
							
								
									20f1eb6b46
								
							
						
					
					
						commit
						6bfce93e04
					
				
							
								
								
									
										7
									
								
								diff.c
								
								
								
								
							
							
						
						
									
										7
									
								
								diff.c
								
								
								
								
							|  | @ -1107,10 +1107,8 @@ static void setup_diff_attr_check(struct git_attr_check *check) | ||||||
| 	check->attr = attr_diff; | 	check->attr = attr_diff; | ||||||
| } | } | ||||||
|  |  | ||||||
| #define FIRST_FEW_BYTES 8000 |  | ||||||
| static int file_is_binary(struct diff_filespec *one) | static int file_is_binary(struct diff_filespec *one) | ||||||
| { | { | ||||||
| 	unsigned long sz; |  | ||||||
| 	struct git_attr_check attr_diff_check; | 	struct git_attr_check attr_diff_check; | ||||||
|  |  | ||||||
| 	setup_diff_attr_check(&attr_diff_check); | 	setup_diff_attr_check(&attr_diff_check); | ||||||
|  | @ -1127,10 +1125,7 @@ static int file_is_binary(struct diff_filespec *one) | ||||||
| 			return 0; | 			return 0; | ||||||
| 		diff_populate_filespec(one, 0); | 		diff_populate_filespec(one, 0); | ||||||
| 	} | 	} | ||||||
| 	sz = one->size; | 	return buffer_is_binary(one->data, one->size); | ||||||
| 	if (FIRST_FEW_BYTES < sz) |  | ||||||
| 		sz = FIRST_FEW_BYTES; |  | ||||||
| 	return !!memchr(one->data, 0, sz); |  | ||||||
| } | } | ||||||
|  |  | ||||||
| static void builtin_diff(const char *name_a, | static void builtin_diff(const char *name_a, | ||||||
|  |  | ||||||
							
								
								
									
										12
									
								
								grep.c
								
								
								
								
							
							
						
						
									
										12
									
								
								grep.c
								
								
								
								
							|  | @ -1,5 +1,6 @@ | ||||||
| #include "cache.h" | #include "cache.h" | ||||||
| #include "grep.h" | #include "grep.h" | ||||||
|  | #include "xdiff-interface.h" | ||||||
|  |  | ||||||
| void append_grep_pattern(struct grep_opt *opt, const char *pat, | void append_grep_pattern(struct grep_opt *opt, const char *pat, | ||||||
| 			 const char *origin, int no, enum grep_pat_token t) | 			 const char *origin, int no, enum grep_pat_token t) | ||||||
|  | @ -232,17 +233,6 @@ static void show_line(struct grep_opt *opt, const char *bol, const char *eol, | ||||||
| 	printf("%.*s\n", (int)(eol-bol), bol); | 	printf("%.*s\n", (int)(eol-bol), bol); | ||||||
| } | } | ||||||
|  |  | ||||||
| /* |  | ||||||
|  * NEEDSWORK: share code with diff.c |  | ||||||
|  */ |  | ||||||
| #define FIRST_FEW_BYTES 8000 |  | ||||||
| static int buffer_is_binary(const char *ptr, unsigned long size) |  | ||||||
| { |  | ||||||
| 	if (FIRST_FEW_BYTES < size) |  | ||||||
| 		size = FIRST_FEW_BYTES; |  | ||||||
| 	return !!memchr(ptr, 0, size); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| static int fixmatch(const char *pattern, char *line, regmatch_t *match) | static int fixmatch(const char *pattern, char *line, regmatch_t *match) | ||||||
| { | { | ||||||
| 	char *hit = strstr(line, pattern); | 	char *hit = strstr(line, pattern); | ||||||
|  |  | ||||||
|  | @ -122,4 +122,12 @@ int read_mmfile(mmfile_t *ptr, const char *filename) | ||||||
| 	return 0; | 	return 0; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | #define FIRST_FEW_BYTES 8000 | ||||||
|  | int buffer_is_binary(const char *ptr, unsigned long size) | ||||||
|  | { | ||||||
|  | 	if (FIRST_FEW_BYTES < size) | ||||||
|  | 		size = FIRST_FEW_BYTES; | ||||||
|  | 	return !!memchr(ptr, 0, size); | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|  | @ -18,5 +18,6 @@ int parse_hunk_header(char *line, int len, | ||||||
| 		      int *ob, int *on, | 		      int *ob, int *on, | ||||||
| 		      int *nb, int *nn); | 		      int *nb, int *nn); | ||||||
| int read_mmfile(mmfile_t *ptr, const char *filename); | int read_mmfile(mmfile_t *ptr, const char *filename); | ||||||
|  | int buffer_is_binary(const char *ptr, unsigned long size); | ||||||
|  |  | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Johannes Schindelin
						Johannes Schindelin