Fix 'git show' on signed tag of signed tag of commit
The cmd_show loop resolves tags by showing them, then pointing the object to the 'tagged' member. However, this object is not fully initialized; it only contains the SHA1. (This resulted in a segfault if there were two levels of tags.) We apply parse_object to get a full object. Noticed by Kalle Olavi Niemitalo on IRC. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
							parent
							
								
									a0d2ceb276
								
							
						
					
					
						commit
						4f3dcc2753
					
				|  | @ -360,7 +360,7 @@ int cmd_show(int argc, const char **argv, const char *prefix) | |||
| 					t->tag, | ||||
| 					diff_get_color_opt(&rev.diffopt, DIFF_RESET)); | ||||
| 			ret = show_object(o->sha1, 1, &rev); | ||||
| 			objects[i].item = (struct object *)t->tagged; | ||||
| 			objects[i].item = parse_object(t->tagged->sha1); | ||||
| 			i--; | ||||
| 			break; | ||||
| 		} | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Thomas Rast
						Thomas Rast