git-commit-vandalism/builtin
Christian Couder 2fc0f1849b builtin/apply: introduce 'struct apply_state' to start libifying
Currently commands that want to use the apply functionality have to launch
a "git apply" process which can be bad for performance.

Let's start libifying the apply functionality and to do that we first need
to get rid of the global variables in "builtin/apply.c".

This patch introduces "struct apply_state" into which all the previously
global variables will be moved. A new parameter called "state" that is a
pointer to the "apply_state" structure will come at the beginning of the
helper functions that need it and will be passed around the call chain.

To start let's move the "prefix" and "prefix_length" global variables into
"struct apply_state".

Reviewed-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2016-05-12 12:21:25 -07:00
..
add.c Merge branch 'jc/add-u-A-default-to-top' into maint 2015-11-05 12:18:12 -08:00
am.c Merge branch 'jc/am-i-v-fix' into maint 2016-03-10 11:13:41 -08:00
annotate.c
apply.c builtin/apply: introduce 'struct apply_state' to start libifying 2016-05-12 12:21:25 -07:00
archive.c
bisect--helper.c
blame.c Merge branch 'tb/blame-force-read-cache-to-workaround-safe-crlf' 2016-04-13 14:12:41 -07:00
branch.c Merge branch 'jk/branch-shortening-funny-symrefs' 2016-04-18 10:49:14 -07:00
bundle.c
cat-file.c cat-file: read batch stream with strbuf_getline() 2016-01-15 10:35:06 -08:00
check-attr.c give "nbuf" strbuf a more meaningful name 2016-02-01 13:43:02 -08:00
check-ignore.c give "nbuf" strbuf a more meaningful name 2016-02-01 13:43:02 -08:00
check-mailmap.c strbuf: introduce strbuf_getline_{lf,nul}() 2016-01-15 10:12:51 -08:00
check-ref-format.c use xmallocz to avoid size arithmetic 2016-02-22 14:51:09 -08:00
checkout-index.c checkout-index: disallow "--no-stage" option 2016-02-01 13:43:49 -08:00
checkout.c checkout_paths(): remove unneeded flag variable 2016-04-10 11:35:36 -07:00
clean.c Merge branch 'jk/tighten-alloc' 2016-02-26 13:37:16 -08:00
clone.c Merge branch 'sb/clone-shallow-passthru' 2016-05-06 14:45:43 -07:00
column.c column: read lines with strbuf_getline() 2016-01-15 10:35:07 -08:00
commit-tree.c Convert struct object to object_id 2015-11-20 08:02:05 -05:00
commit.c Merge branch 'ad/commit-have-m-option' 2016-04-22 15:45:07 -07:00
config.c Merge branch 'jk/config-get-urlmatch' into maint 2016-04-14 18:57:43 -07:00
count-objects.c
credential.c
describe.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
diff-files.c
diff-index.c
diff-tree.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
diff.c diff: activate diff.renames by default 2016-02-25 11:31:02 -08:00
fast-export.c convert trivial cases to ALLOC_ARRAY 2016-02-22 14:51:09 -08:00
fetch-pack.c fetch-pack: fix object_id of exact sha1 2016-03-01 11:19:19 -08:00
fetch.c Merge branch 'sb/submodule-parallel-update' 2016-04-06 11:39:01 -07:00
fmt-merge-msg.c Merge branch 'rs/pop-commit' into maint 2015-12-11 11:14:13 -08:00
for-each-ref.c ref-filter: add option to match literal pattern 2015-09-17 10:02:49 -07:00
fsck.c fsck_head_link(): remove unneeded flag variable 2016-04-10 11:35:33 -07:00
gc.c Merge branch 'dk/gc-idx-wo-pack' into maint 2015-12-04 11:33:08 -08:00
get-tar-commit-id.c usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
grep.c Merge branch 'bc/object-id' 2016-05-06 14:45:44 -07:00
hash-object.c Merge branch 'jk/options-cleanup' 2016-02-10 14:20:08 -08:00
help.c convert trivial cases to FLEX_ARRAY macros 2016-02-22 14:51:09 -08:00
index-pack.c Merge branch 'jc/index-pack' into maint 2016-04-14 18:37:16 -07:00
init-db.c Merge branch 'jk/check-repository-format' 2016-04-13 14:12:28 -07:00
interpret-trailers.c interpret-trailers: add option for in-place editing 2016-01-14 12:22:17 -08:00
log.c Merge branch 'lt/pretty-expand-tabs' 2016-04-13 14:12:36 -07:00
ls-files.c Merge branch 'jk/options-cleanup' 2016-02-10 14:20:08 -08:00
ls-remote.c ls-remote: add support for showing symrefs 2016-01-19 10:07:56 -08:00
ls-tree.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
mailinfo.c mailinfo: libify 2015-10-21 15:59:34 -07:00
mailsplit.c mailsplit: make PATH_MAX buffers dynamic 2015-09-25 10:18:18 -07:00
merge-base.c convert trivial cases to ALLOC_ARRAY 2016-02-22 14:51:09 -08:00
merge-file.c Merge branch 'jk/merge-file-exit-code' into maint 2015-11-03 15:32:41 -08:00
merge-index.c use sha1_to_hex_r() instead of strcpy 2015-10-05 11:08:05 -07:00
merge-ours.c
merge-recursive.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
merge-tree.c struct name_entry: use struct object_id instead of unsigned char sha1[20] 2016-04-25 14:23:42 -07:00
merge.c Merge branch 'en/merge-trivial-fix' 2016-04-25 15:17:15 -07:00
mktag.c usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
mktree.c Merge branch 'jk/tighten-alloc' 2016-02-26 13:37:16 -08:00
mv.c Merge branch 'sb/mv-submodule-fix' 2016-04-29 12:59:07 -07:00
name-rev.c Merge branch 'js/name-rev-use-oldest-ref' 2016-05-03 14:08:13 -07:00
notes.c Merge branch 'sb/misc-cleanups' 2016-04-13 14:12:34 -07:00
pack-objects.c Merge branch 'ew/doc-split-pack-disables-bitmap' 2016-05-10 13:40:28 -07:00
pack-redundant.c convert trivial cases to ALLOC_ARRAY 2016-02-22 14:51:09 -08:00
pack-refs.c
patch-id.c usage: do not insist that standard input must come from a file 2015-10-16 15:27:52 -07:00
prune-packed.c
prune.c Merge branch 'jk/repository-extension' into maint 2015-11-03 15:32:25 -08:00
pull.c Merge branch 'jc/merge-refuse-new-root' 2016-04-29 12:59:08 -07:00
push.c Merge branch 'mm/push-default-warning' 2016-02-26 13:37:25 -08:00
read-tree.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
receive-pack.c Merge branch 'dt/pre-refs-backend' 2016-04-25 15:17:15 -07:00
reflog.c struct name_entry: use struct object_id instead of unsigned char sha1[20] 2016-04-25 14:23:42 -07:00
remote-ext.c convert manual allocations to argv_array 2016-02-22 14:50:32 -08:00
remote-fd.c
remote.c Merge branch 'ps/config-error' 2016-02-26 13:37:19 -08:00
repack.c strbuf: introduce strbuf_getline_{lf,nul}() 2016-01-15 10:12:51 -08:00
replace.c Merge branch 'js/replace-edit-use-editor-configuration' 2016-04-29 12:59:07 -07:00
rerere.c Sync with 2.6.1 2015-10-05 13:20:08 -07:00
reset.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
rev-list.c Merge branch 'maint-2.4' into maint-2.5 2016-03-17 11:24:14 -07:00
rev-parse.c Merge branch 'jk/rev-parse-local-env-vars' into maint 2016-04-14 18:57:44 -07:00
revert.c
rm.c Merge branch 'nd/ita-cleanup' into maint 2016-02-22 13:10:21 -08:00
send-pack.c Merge branch 'sk/send-pack-all-fix' 2016-04-13 14:12:33 -07:00
shortlog.c Merge branch 'jk/shortlog' 2016-01-28 16:10:14 -08:00
show-branch.c Merge branch 'rs/show-branch-argv-array' into maint 2015-12-11 11:14:14 -08:00
show-ref.c show-ref: stop using PARSE_OPT_NO_INTERNAL_HELP 2015-11-20 08:02:07 -05:00
stripspace.c stripspace: call U+0020 a "space" instead of a "blank" 2016-01-29 16:02:34 -08:00
submodule--helper.c Merge branch 'sb/submodule-helper-clone-regression-fix' 2016-04-22 15:45:04 -07:00
symbolic-ref.c symbolic-ref: propagate error code from create_symref() 2015-12-21 12:03:03 -08:00
tag.c Merge branch 'st/verify-tag' 2016-04-29 12:59:09 -07:00
unpack-file.c convert trivial sprintf / strcpy calls to xsnprintf 2015-09-25 10:18:18 -07:00
unpack-objects.c Remove get_object_hash. 2015-11-20 08:02:05 -05:00
update-index.c Merge branch 'jk/options-cleanup' 2016-02-10 14:20:08 -08:00
update-ref.c tag, update-ref: improve description of option "create-reflog" 2015-09-11 09:50:02 -07:00
update-server-info.c
upload-archive.c upload-archive: convert sprintf to strbuf 2015-09-25 10:18:18 -07:00
var.c
verify-commit.c
verify-pack.c
verify-tag.c verify-tag: move tag verification code to tag.c 2016-04-22 14:06:46 -07:00
worktree.c worktree: add: introduce --checkout option 2016-03-29 11:12:36 -07:00
write-tree.c