Skip to content

Commit 87e3f4f

Browse files
committedNov 21, 2017
fixing reflist + adding test for Git2\Reference::list($repo)
1 parent 32d63a2 commit 87e3f4f

File tree

2 files changed

+9
-6
lines changed

2 files changed

+9
-6
lines changed
 

Diff for: ‎git2_reference.c

+5-6
Original file line numberDiff line numberDiff line change
@@ -82,14 +82,13 @@ ZEND_END_ARG_INFO()
8282

8383
static int git2_reference_list_callback(git_reference *ref, void *payload) {
8484
git2_reference_object_t *intern;
85-
zval *obj;
86-
ALLOC_ZVAL(obj);
85+
zval obj;
8786

88-
object_init_ex(obj, php_git2_reference_ce);
89-
intern = (git2_reference_object_t*)Z_OBJ_P(obj);
87+
object_init_ex(&obj, php_git2_reference_ce);
88+
intern = (git2_reference_object_t*)Z_OBJ_P(&obj);
9089
intern->ref = ref;
9190

92-
add_next_index_zval((zval*)payload, obj);
91+
add_next_index_zval((zval*)payload, &obj);
9392
return 0;
9493
}
9594

@@ -108,7 +107,7 @@ static PHP_METHOD(Reference, list) {
108107

109108
array_init(return_value);
110109

111-
int res = git_reference_foreach(repo, git2_reference_list_callback, &return_value);
110+
int res = git_reference_foreach(repo, git2_reference_list_callback, return_value);
112111
if (res != 0) {
113112
git2_throw_last_error();
114113
return;

Diff for: ‎git2_tests/001_clone.php

+4
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,7 @@
1313
#var_dump($repo->checkout_head());
1414
var_dump($repo->head());
1515

16+
foreach(Git2\Reference::list($repo) as $ref) {
17+
echo "Ref: ".$ref->name()." --> ".bin2hex($ref->target())."\n";
18+
}
19+

0 commit comments

Comments
 (0)
Please sign in to comment.