Skip to content

Commit

Permalink
Git.pm: Implement Git::exec_path()
Browse files Browse the repository at this point in the history
This patch implements Git::exec_path() (as a direct XS call).

Signed-off-by: Petr Baudis <pasky@suse.cz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Petr Baudis authored and Junio C Hamano committed Jul 3, 2006
1 parent b1edc53 commit eca1f6f
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 1 deletion.
15 changes: 14 additions & 1 deletion perl/Git.pm
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ require Exporter;

# Methods which can be called as standalone functions as well:
@EXPORT_OK = qw(command command_oneline command_pipe command_noisy
hash_object);
exec_path hash_object);


=head1 DESCRIPTION
Expand Down Expand Up @@ -288,6 +288,19 @@ sub command_noisy {
}


=item exec_path ()
Return path to the git sub-command executables (the same as
C<git --exec-path>). Useful mostly only internally.
Implementation of this function is very fast; no external command calls
are involved.
=cut

# Implemented in Git.xs.


=item hash_object ( FILENAME [, TYPE ] )
=item hash_object ( FILEHANDLE [, TYPE ] )
Expand Down
12 changes: 12 additions & 0 deletions perl/Git.xs
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

/* libgit interface */
#include "../cache.h"
#include "../exec_cmd.h"

/* XS and Perl interface */
#include "EXTERN.h"
Expand All @@ -21,6 +22,17 @@ PROTOTYPES: DISABLE

# /* TODO: xs_call_gate(). See Git.pm. */


const char *
xs_exec_path()
CODE:
{
RETVAL = git_exec_path();
}
OUTPUT:
RETVAL


char *
xs_hash_object(file, type = "blob")
SV *file;
Expand Down

0 comments on commit eca1f6f

Please sign in to comment.