projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] Fix up <sys/socket.h> include dependency
[git.git]
/
show-files.c
diff --git
a/show-files.c
b/show-files.c
index
0ecb2bd
..
afeb635
100644
(file)
--- a/
show-files.c
+++ b/
show-files.c
@@
-6,7
+6,6
@@
* Copyright (C) Linus Torvalds, 2005
*/
#include <dirent.h>
* Copyright (C) Linus Torvalds, 2005
*/
#include <dirent.h>
-#include <sys/param.h>
#include "cache.h"
#include "cache.h"
@@
-15,6
+14,7
@@
static int show_cached = 0;
static int show_others = 0;
static int show_ignored = 0;
static int show_stage = 0;
static int show_others = 0;
static int show_ignored = 0;
static int show_stage = 0;
+static int show_unmerged = 0;
static int line_terminator = '\n';
static const char **dir;
static int line_terminator = '\n';
static const char **dir;
@@
-30,9
+30,9
@@
static void add_name(const char *pathname, int len)
if (nr_dir == dir_alloc) {
dir_alloc = alloc_nr(dir_alloc);
if (nr_dir == dir_alloc) {
dir_alloc = alloc_nr(dir_alloc);
- dir = realloc(dir, dir_alloc*sizeof(char *));
+ dir =
x
realloc(dir, dir_alloc*sizeof(char *));
}
}
- name = malloc(len + 1);
+ name =
x
malloc(len + 1);
memcpy(name, pathname, len + 1);
dir[nr_dir++] = name;
}
memcpy(name, pathname, len + 1);
dir[nr_dir++] = name;
}
@@
-112,6
+112,8
@@
static void show_files(void)
if (show_cached | show_stage) {
for (i = 0; i < active_nr; i++) {
struct cache_entry *ce = active_cache[i];
if (show_cached | show_stage) {
for (i = 0; i < active_nr; i++) {
struct cache_entry *ce = active_cache[i];
+ if (show_unmerged && !ce_stage(ce))
+ continue;
if (!show_stage)
printf("%s%c", ce->name, line_terminator);
else
if (!show_stage)
printf("%s%c", ce->name, line_terminator);
else
@@
-170,12
+172,18
@@
int main(int argc, char **argv)
show_stage = 1;
continue;
}
show_stage = 1;
continue;
}
+ if (!strcmp(arg, "--unmerged")) {
+ // There's no point in showing unmerged unless you also show the stage information
+ show_stage = 1;
+ show_unmerged = 1;
+ continue;
+ }
usage("show-files [-z] (--[cached|deleted|others|ignored|stage])*");
}
/* With no flags, we default to showing the cached files */
usage("show-files [-z] (--[cached|deleted|others|ignored|stage])*");
}
/* With no flags, we default to showing the cached files */
- if (!(show_stage | show_deleted | show_others | show_ignored))
+ if (!(show_stage | show_deleted | show_others | show_ignored
| show_unmerged
))
show_cached = 1;
read_cache();
show_cached = 1;
read_cache();