]> git.proxmox.com Git - libgit2.git/commitdiff
refs: adjust to the new reflog API
authorCarlos Martín Nieto <cmn@dwim.me>
Wed, 30 Oct 2013 16:24:36 +0000 (17:24 +0100)
committerCarlos Martín Nieto <cmn@dwim.me>
Sat, 23 Nov 2013 12:35:53 +0000 (13:35 +0100)
src/refs.c
tests/refs/createwithlog.c
tests/refs/settargetwithlog.c

index eff6b3356d8d4c377420c498b29c3dc58e030bc1..d3d072cef35a6ece033221710b9a3135629784e7 100644 (file)
@@ -328,27 +328,15 @@ static int feed_reflog(
        const char *log_message)
 {
 
-       git_reflog *reflog = NULL;
        git_oid peeled_ref_oid;
        int error;
 
-       if ((error = git_reflog_read(&reflog, ref)) < 0)
-               goto cleanup;
-
        if ((error = git_reference_name_to_id(&peeled_ref_oid,
                git_reference_owner(ref), git_reference_name(ref))) < 0)
-                       goto cleanup;
-
-       if ((error = git_reflog_append(reflog, &peeled_ref_oid, 
-               signature, log_message)) < 0)
-                       goto cleanup;
-
-       error = git_reflog_write(reflog);
-
-cleanup:
-       git_reflog_free(reflog);
+               return error;
 
-       return 0;
+       return git_reflog_append_to(git_reference_owner(ref), git_reference_name(ref),
+                                   &peeled_ref_oid, signature, log_message);
 }
 
 static int reference__create(
index 34ab8067fadf63fd33e3ddf56cb39f94c206736d..ff36ffdcd5bf60333532519cced873e14cec2070 100644 (file)
@@ -38,7 +38,7 @@ void test_refs_createwithlog__creating_a_direct_reference_adds_a_reflog_entry(vo
        cl_git_pass(
                git_reference_create_with_log(&reference, g_repo, name, &id, 0, signature, message));
 
-       cl_git_pass(git_reflog_read(&reflog, reference));
+       cl_git_pass(git_reflog_read(&reflog, g_repo, name));
        cl_assert_equal_sz(1, git_reflog_entrycount(reflog));
 
        entry = git_reflog_entry_byindex(reflog, 0);
@@ -69,7 +69,7 @@ void test_refs_createwithlog__creating_a_symbolic_reference_adds_a_reflog_entry(
        cl_git_pass(git_reference_symbolic_create_with_log(&reference, g_repo,
                name, current_head_target, 0, signature, message));
 
-       cl_git_pass(git_reflog_read(&reflog, reference));
+       cl_git_pass(git_reflog_read(&reflog, g_repo, name));
        cl_assert_equal_sz(1, git_reflog_entrycount(reflog));
 
        entry = git_reflog_entry_byindex(reflog, 0);
index e1f73db567d065db7c0a988b13dba9140cc2077a..99377dad787434d8361f1037e7cdbc23a74d471e 100644 (file)
@@ -41,7 +41,7 @@ void test_refs_settargetwithlog__updating_a_direct_reference_adds_a_reflog_entry
        cl_git_pass(git_reference_set_target_with_log(
                &reference_out, reference, &target_id, signature, message));
 
-       cl_git_pass(git_reflog_read(&reflog, reference_out));
+       cl_git_pass(git_reflog_read(&reflog, g_repo, br2_name));
 
        entry = git_reflog_entry_byindex(reflog, 0);
        cl_assert(git_oid_cmp(&current_id, &entry->oid_old) == 0);
@@ -80,7 +80,7 @@ void test_refs_settargetwithlog__updating_a_symbolic_reference_adds_a_reflog_ent
        cl_assert_equal_s(
                br2_name, git_reference_symbolic_target(reference_out));
 
-       cl_git_pass(git_reflog_read(&reflog, reference));
+       cl_git_pass(git_reflog_read(&reflog, g_repo, name));
 
        entry = git_reflog_entry_byindex(reflog, 0);
        cl_assert(git_oid_streq(&entry->oid_old, master_tip) == 0);