mirror of
https://github.com/extrawurst/gitui.git
synced 2024-11-22 02:12:58 +03:00
fix status fetch hanging on bare repos w/o worktree (#1032)
closes #1029
This commit is contained in:
parent
0a6ca35fc7
commit
a947ce35e7
1
Makefile
1
Makefile
@ -2,6 +2,7 @@
|
||||
.PHONY: debug build-release release-linux-musl test clippy clippy-pedantic install install-debug
|
||||
|
||||
ARGS=-l
|
||||
# ARGS=-l -d ~/code/git-bare-test.git
|
||||
# ARGS=-l -d ~/code/git-bare-test.git -w ~/code/git-bare-test
|
||||
|
||||
profile:
|
||||
|
@ -127,23 +127,22 @@ impl AsyncStatus {
|
||||
self.pending.fetch_add(1, Ordering::Relaxed);
|
||||
|
||||
rayon_core::spawn(move || {
|
||||
let ok = Self::fetch_helper(
|
||||
if let Err(e) = Self::fetch_helper(
|
||||
&repo,
|
||||
status_type,
|
||||
config,
|
||||
hash_request,
|
||||
&arc_current,
|
||||
&arc_last,
|
||||
)
|
||||
.is_ok();
|
||||
) {
|
||||
log::error!("fetch_helper: {}", e);
|
||||
}
|
||||
|
||||
arc_pending.fetch_sub(1, Ordering::Relaxed);
|
||||
|
||||
if ok {
|
||||
sender
|
||||
.send(AsyncGitNotification::Status)
|
||||
.expect("error sending status");
|
||||
}
|
||||
sender
|
||||
.send(AsyncGitNotification::Status)
|
||||
.expect("error sending status");
|
||||
});
|
||||
|
||||
Ok(None)
|
||||
|
@ -104,6 +104,10 @@ pub fn get_status(
|
||||
|
||||
let repo = repo(repo_path)?;
|
||||
|
||||
if repo.is_bare() && !repo.is_worktree() {
|
||||
return Ok(Vec::new());
|
||||
}
|
||||
|
||||
let show_untracked = if let Some(config) = show_untracked {
|
||||
config
|
||||
} else {
|
||||
|
@ -15,7 +15,7 @@ pub fn trim_length_left(s: &str, width: usize) -> &str {
|
||||
//TODO: allow customize tabsize
|
||||
pub fn tabs_to_spaces(input: String) -> String {
|
||||
if input.contains('\t') {
|
||||
input.replace("\t", " ")
|
||||
input.replace('\t', " ")
|
||||
} else {
|
||||
input
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user