chiark
/
gitweb
/
~mdw
/
disorder
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
73dd383
)
suppress more redundant redisplay_tree() calls
author
Richard Kettlewell
<rjk@greenend.org.uk>
Sun, 11 Nov 2007 12:55:52 +0000
(12:55 +0000)
committer
Richard Kettlewell
<rjk@greenend.org.uk>
Sun, 11 Nov 2007 12:55:52 +0000
(12:55 +0000)
disobedience/choose.c
patch
|
blob
|
blame
|
history
diff --git
a/disobedience/choose.c
b/disobedience/choose.c
index dc864126954984dc5e44775eefbca66e2c153bba..7ce30dac134a0535a6b94b23a52f2930944f7dac 100644
(file)
--- a/
disobedience/choose.c
+++ b/
disobedience/choose.c
@@
-381,6
+381,8
@@
static void got_files(void *v, int nvec, char **vec) {
* done */
if(!(cn->flags & CN_GETTING_ANY))
filled(cn);
* done */
if(!(cn->flags & CN_GETTING_ANY))
filled(cn);
+ if(!gets_in_flight)
+ redisplay_tree("got_files");
}
/** @brief Called with an alias resolved filename */
}
/** @brief Called with an alias resolved filename */
@@
-398,7
+400,7
@@
static void got_resolved_file(void *v, const char *track) {
/* Only bother updating when we've got the lot */
if(--cn->pending == 0) {
cn->flags &= ~CN_RESOLVING_FILES;
/* Only bother updating when we've got the lot */
if(--cn->pending == 0) {
cn->flags &= ~CN_RESOLVING_FILES;
- updated_node(cn,
1
, "got_resolved_file");
+ updated_node(cn,
gets_in_flight == 0
, "got_resolved_file");
if(!(cn->flags & CN_GETTING_ANY))
filled(cn);
}
if(!(cn->flags & CN_GETTING_ANY))
filled(cn);
}
@@
-424,7
+426,7
@@
static void got_dirs(void *v, int nvec, char **vec) {
trackname_transform("dir", vec[n], "display"),
trackname_transform("dir", vec[n], "sort"),
CN_EXPANDABLE, fill_directory_node);
trackname_transform("dir", vec[n], "display"),
trackname_transform("dir", vec[n], "sort"),
CN_EXPANDABLE, fill_directory_node);
- updated_node(cn,
1
, "got_dirs");
+ updated_node(cn,
gets_in_flight == 0
, "got_dirs");
cn->flags &= ~CN_GETTING_DIRS;
if(!(cn->flags & CN_GETTING_ANY))
filled(cn);
cn->flags &= ~CN_GETTING_DIRS;
if(!(cn->flags & CN_GETTING_ANY))
filled(cn);