mirror of
				https://git.proxmox.com/git/libgit2
				synced 2025-10-31 15:00:12 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			21 lines
		
	
	
		
			628 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			628 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #include "clar_libgit2.h"
 | |
| 
 | |
| void test_refs_crashes__double_free(void)
 | |
| {
 | |
| 	git_repository *repo;
 | |
| 	git_reference *ref, *ref2;
 | |
| 	const char *REFNAME = "refs/heads/xxx";
 | |
| 
 | |
| 	cl_git_pass(git_repository_open(&repo, cl_fixture("testrepo.git")));
 | |
| 	cl_git_pass(git_reference_symbolic_create(&ref, repo, REFNAME, "refs/heads/master", 0));
 | |
| 	cl_git_pass(git_reference_lookup(&ref2, repo, REFNAME));
 | |
| 	cl_git_pass(git_reference_delete(ref));
 | |
| 	git_reference_free(ref);
 | |
| 	git_reference_free(ref2);
 | |
| 
 | |
| 	/* reference is gone from disk, so reloading it will fail */
 | |
| 	cl_git_fail(git_reference_lookup(&ref2, repo, REFNAME));
 | |
| 
 | |
| 	git_repository_free(repo);
 | |
| }
 | 
