@@ -85,7 +85,7 @@ static void print_new_head_line(struct commit *commit)
85
85
printf ("\n" );
86
86
}
87
87
88
- static int update_index_refresh (int fd , struct lock_file * index_lock )
88
+ static int update_index_refresh (int fd , struct lock_file * index_lock , int flags )
89
89
{
90
90
int result ;
91
91
@@ -96,7 +96,8 @@ static int update_index_refresh(int fd, struct lock_file *index_lock)
96
96
97
97
if (read_cache () < 0 )
98
98
return error ("Could not read index" );
99
- result = refresh_cache (REFRESH_SAY_CHANGED ) ? 1 : 0 ;
99
+
100
+ result = refresh_cache (flags ) ? 1 : 0 ;
100
101
if (write_cache (fd , active_cache , active_nr ) ||
101
102
commit_locked_index (index_lock ))
102
103
return error ("Could not refresh index" );
@@ -128,7 +129,7 @@ static void update_index_from_diff(struct diff_queue_struct *q,
128
129
}
129
130
130
131
static int read_from_tree (const char * prefix , const char * * argv ,
131
- unsigned char * tree_sha1 )
132
+ unsigned char * tree_sha1 , int refresh_flags )
132
133
{
133
134
struct lock_file * lock = xcalloc (1 , sizeof (struct lock_file ));
134
135
int index_fd , index_was_discarded = 0 ;
@@ -152,7 +153,7 @@ static int read_from_tree(const char *prefix, const char **argv,
152
153
if (!index_was_discarded )
153
154
/* The index is still clobbered from do_diff_cache() */
154
155
discard_cache ();
155
- return update_index_refresh (index_fd , lock );
156
+ return update_index_refresh (index_fd , lock , refresh_flags );
156
157
}
157
158
158
159
static void prepend_reflog_action (const char * action , char * buf , size_t size )
@@ -246,7 +247,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
246
247
else if (reset_type != NONE )
247
248
die ("Cannot do %s reset with paths." ,
248
249
reset_type_names [reset_type ]);
249
- return read_from_tree (prefix , argv + i , sha1 );
250
+ return read_from_tree (prefix , argv + i , sha1 ,
251
+ quiet ? REFRESH_QUIET : REFRESH_SAY_CHANGED );
250
252
}
251
253
if (reset_type == NONE )
252
254
reset_type = MIXED ; /* by default */
@@ -286,7 +288,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
286
288
case SOFT : /* Nothing else to do. */
287
289
break ;
288
290
case MIXED : /* Report what has not been updated. */
289
- update_index_refresh (0 , NULL );
291
+ update_index_refresh (0 , NULL ,
292
+ quiet ? REFRESH_QUIET : REFRESH_SAY_CHANGED );
290
293
break ;
291
294
}
292
295
0 commit comments