 5d23e133d2
			
		
	
	5d23e133d2
	
	
	
		
			
			This implements the patch-id computation and recording library, patch-ids.c, and rewrites the get_patch_ids() function used in cherry and format-patch to use it, so that they do not pollute the object namespace. Earlier code threw non-objects into the in-core object database, and hoped for not getting bitten by SHA-1 collisions. While it may be practically Ok, it still was an ugly hack. Signed-off-by: Junio C Hamano <junkio@cox.net>
		
			
				
	
	
		
			22 lines
		
	
	
		
			490 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			490 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef PATCH_IDS_H
 | |
| #define PATCH_IDS_H
 | |
| 
 | |
| struct patch_id {
 | |
| 	unsigned char patch_id[20];
 | |
| 	char seen;
 | |
| };
 | |
| 
 | |
| struct patch_ids {
 | |
| 	struct diff_options diffopts;
 | |
| 	int nr, alloc;
 | |
| 	struct patch_id **table;
 | |
| 	struct patch_id_bucket *patches;
 | |
| };
 | |
| 
 | |
| int init_patch_ids(struct patch_ids *);
 | |
| int free_patch_ids(struct patch_ids *);
 | |
| struct patch_id *add_commit_patch_id(struct commit *, struct patch_ids *);
 | |
| struct patch_id *has_commit_patch_id(struct commit *, struct patch_ids *);
 | |
| 
 | |
| #endif /* PATCH_IDS_H */
 |