@@ -62,7 +62,7 @@ static int sparse_checkout_list(int argc, const char **argv, const char *prefix,
6262 int res ;
6363
6464 setup_work_tree ();
65- if (!core_apply_sparse_checkout )
65+ if (!the_repository -> settings . sparse_checkout )
6666 die (_ ("this worktree is not sparse" ));
6767
6868 argc = parse_options (argc , argv , prefix ,
@@ -71,7 +71,7 @@ static int sparse_checkout_list(int argc, const char **argv, const char *prefix,
7171
7272 memset (& pl , 0 , sizeof (pl ));
7373
74- pl .use_cone_patterns = core_sparse_checkout_cone ;
74+ pl .use_cone_patterns = the_repository -> settings . sparse_checkout_cone ;
7575
7676 sparse_filename = get_sparse_checkout_filename ();
7777 res = add_patterns_from_file_to_list (sparse_filename , "" , 0 , & pl , NULL , 0 );
@@ -352,7 +352,7 @@ static int write_patterns_and_update(struct pattern_list *pl)
352352 if (!fp )
353353 die_errno (_ ("unable to fdopen %s" ), get_lock_file_path (& lk ));
354354
355- if (core_sparse_checkout_cone )
355+ if (the_repository -> settings . sparse_checkout_cone )
356356 write_cone_to_file (fp , pl );
357357 else
358358 write_patterns_to_file (fp , pl );
@@ -397,16 +397,16 @@ static int set_config(enum sparse_checkout_mode mode)
397397
398398static enum sparse_checkout_mode update_cone_mode (int * cone_mode ) {
399399 /* If not specified, use previous definition of cone mode */
400- if (* cone_mode == -1 && core_apply_sparse_checkout )
401- * cone_mode = core_sparse_checkout_cone ;
400+ if (* cone_mode == -1 && the_repository -> settings . sparse_checkout )
401+ * cone_mode = the_repository -> settings . sparse_checkout_cone ;
402402
403403 /* Set cone/non-cone mode appropriately */
404- core_apply_sparse_checkout = 1 ;
404+ the_repository -> settings . sparse_checkout = 1 ;
405405 if (* cone_mode == 1 || * cone_mode == -1 ) {
406- core_sparse_checkout_cone = 1 ;
406+ the_repository -> settings . sparse_checkout_cone = 1 ;
407407 return MODE_CONE_PATTERNS ;
408408 }
409- core_sparse_checkout_cone = 0 ;
409+ the_repository -> settings . sparse_checkout_cone = 0 ;
410410 return MODE_ALL_PATTERNS ;
411411}
412412
@@ -415,7 +415,7 @@ static int update_modes(int *cone_mode, int *sparse_index)
415415 int mode , record_mode ;
416416
417417 /* Determine if we need to record the mode; ensure sparse checkout on */
418- record_mode = (* cone_mode != -1 ) || !core_apply_sparse_checkout ;
418+ record_mode = (* cone_mode != -1 ) || !the_repository -> settings . sparse_checkout ;
419419
420420 mode = update_cone_mode (cone_mode );
421421 if (record_mode && set_config (mode ))
@@ -572,7 +572,7 @@ static void add_patterns_from_input(struct pattern_list *pl,
572572 FILE * file )
573573{
574574 int i ;
575- if (core_sparse_checkout_cone ) {
575+ if (the_repository -> settings . sparse_checkout_cone ) {
576576 struct strbuf line = STRBUF_INIT ;
577577
578578 hashmap_init (& pl -> recursive_hashmap , pl_hashmap_cmp , NULL , 0 );
@@ -637,7 +637,7 @@ static void add_patterns_cone_mode(int argc, const char **argv,
637637 use_stdin ? stdin : NULL );
638638
639639 memset (& existing , 0 , sizeof (existing ));
640- existing .use_cone_patterns = core_sparse_checkout_cone ;
640+ existing .use_cone_patterns = the_repository -> settings . sparse_checkout_cone ;
641641
642642 if (add_patterns_from_file_to_list (sparse_filename , "" , 0 ,
643643 & existing , NULL , 0 ))
@@ -683,7 +683,7 @@ static int modify_pattern_list(struct strvec *args, int use_stdin,
683683
684684 switch (m ) {
685685 case ADD :
686- if (core_sparse_checkout_cone )
686+ if (the_repository -> settings . sparse_checkout_cone )
687687 add_patterns_cone_mode (args -> nr , args -> v , pl , use_stdin );
688688 else
689689 add_patterns_literal (args -> nr , args -> v , pl , use_stdin );
@@ -695,9 +695,9 @@ static int modify_pattern_list(struct strvec *args, int use_stdin,
695695 break ;
696696 }
697697
698- if (!core_apply_sparse_checkout ) {
698+ if (!the_repository -> settings . sparse_checkout ) {
699699 set_config (MODE_ALL_PATTERNS );
700- core_apply_sparse_checkout = 1 ;
700+ the_repository -> settings . sparse_checkout = 1 ;
701701 changed_config = 1 ;
702702 }
703703
@@ -719,7 +719,7 @@ static void sanitize_paths(struct strvec *args,
719719 if (!args -> nr )
720720 return ;
721721
722- if (prefix && * prefix && core_sparse_checkout_cone ) {
722+ if (prefix && * prefix && the_repository -> settings . sparse_checkout_cone ) {
723723 /*
724724 * The args are not pathspecs, so unfortunately we
725725 * cannot imitate how cmd_add() uses parse_pathspec().
@@ -736,10 +736,10 @@ static void sanitize_paths(struct strvec *args,
736736 if (skip_checks )
737737 return ;
738738
739- if (prefix && * prefix && !core_sparse_checkout_cone )
739+ if (prefix && * prefix && !the_repository -> settings . sparse_checkout_cone )
740740 die (_ ("please run from the toplevel directory in non-cone mode" ));
741741
742- if (core_sparse_checkout_cone ) {
742+ if (the_repository -> settings . sparse_checkout_cone ) {
743743 for (i = 0 ; i < args -> nr ; i ++ ) {
744744 if (args -> v [i ][0 ] == '/' )
745745 die (_ ("specify directories rather than patterns (no leading slash)" ));
@@ -761,7 +761,7 @@ static void sanitize_paths(struct strvec *args,
761761 if (S_ISSPARSEDIR (ce -> ce_mode ))
762762 continue ;
763763
764- if (core_sparse_checkout_cone )
764+ if (the_repository -> settings . sparse_checkout_cone )
765765 die (_ ("'%s' is not a directory; to treat it as a directory anyway, rerun with --skip-checks" ), args -> v [i ]);
766766 else
767767 warning (_ ("pass a leading slash before paths such as '%s' if you want a single file (see NON-CONE PROBLEMS in the git-sparse-checkout manual)." ), args -> v [i ]);
@@ -793,7 +793,7 @@ static int sparse_checkout_add(int argc, const char **argv, const char *prefix,
793793 int ret ;
794794
795795 setup_work_tree ();
796- if (!core_apply_sparse_checkout )
796+ if (!the_repository -> settings . sparse_checkout )
797797 die (_ ("no sparse-checkout to add to" ));
798798
799799 repo_read_index (the_repository );
@@ -864,7 +864,7 @@ static int sparse_checkout_set(int argc, const char **argv, const char *prefix,
864864 * non-cone mode, if nothing is specified, manually select just the
865865 * top-level directory (much as 'init' would do).
866866 */
867- if (!core_sparse_checkout_cone && !set_opts .use_stdin && argc == 0 ) {
867+ if (!the_repository -> settings . sparse_checkout_cone && !set_opts .use_stdin && argc == 0 ) {
868868 for (int i = 0 ; i < default_patterns_nr ; i ++ )
869869 strvec_push (& patterns , default_patterns [i ]);
870870 } else {
@@ -902,7 +902,7 @@ static int sparse_checkout_reapply(int argc, const char **argv,
902902 };
903903
904904 setup_work_tree ();
905- if (!core_apply_sparse_checkout )
905+ if (!the_repository -> settings . sparse_checkout )
906906 die (_ ("must be in a sparse-checkout to reapply sparsity patterns" ));
907907
908908 reapply_opts .cone_mode = -1 ;
@@ -935,7 +935,7 @@ static int sparse_checkout_disable(int argc, const char **argv,
935935 struct pattern_list pl ;
936936
937937 /*
938- * We do not exit early if !core_apply_sparse_checkout ; due to the
938+ * We do not exit early if !sparse_checkout ; due to the
939939 * ability for users to manually muck things up between
940940 * direct editing of .git/info/sparse-checkout
941941 * running read-tree -m u HEAD or update-index --skip-worktree
@@ -961,11 +961,10 @@ static int sparse_checkout_disable(int argc, const char **argv,
961961 hashmap_init (& pl .recursive_hashmap , pl_hashmap_cmp , NULL , 0 );
962962 hashmap_init (& pl .parent_hashmap , pl_hashmap_cmp , NULL , 0 );
963963 pl .use_cone_patterns = 0 ;
964- core_apply_sparse_checkout = 1 ;
964+ the_repository -> settings . sparse_checkout = 1 ;
965965
966966 add_pattern ("/*" , empty_base , 0 , & pl , 0 );
967967
968- prepare_repo_settings (the_repository );
969968 the_repository -> settings .sparse_index = 0 ;
970969
971970 if (update_working_directory (& pl ))
@@ -1042,7 +1041,7 @@ static int sparse_checkout_check_rules(int argc, const char **argv, const char *
10421041 check_rules_opts .cone_mode = 1 ;
10431042
10441043 update_cone_mode (& check_rules_opts .cone_mode );
1045- pl .use_cone_patterns = core_sparse_checkout_cone ;
1044+ pl .use_cone_patterns = the_repository -> settings . sparse_checkout_cone ;
10461045 if (check_rules_opts .rules_file ) {
10471046 fp = xfopen (check_rules_opts .rules_file , "r" );
10481047 add_patterns_from_input (& pl , argc , argv , fp );
0 commit comments