forked from mars/breed
It now opens to an empty buffer when there is no stdin
This commit is contained in:
parent
31d9cdf266
commit
6ed8a04c24
1
Cargo.lock
generated
1
Cargo.lock
generated
@ -62,6 +62,7 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"arg",
|
||||
"crossterm",
|
||||
"libc",
|
||||
"ropey",
|
||||
"yacexits",
|
||||
]
|
||||
|
@ -7,5 +7,6 @@ license = "AGPL-3.0-or-later"
|
||||
[dependencies]
|
||||
arg = "0.4.1"
|
||||
crossterm = "0.26"
|
||||
libc = "0.2.141"
|
||||
ropey = "1.6"
|
||||
yacexits = "0.1.5"
|
||||
|
@ -357,7 +357,12 @@ fn main() -> Result<()> {
|
||||
let mut buf = Vec::new();
|
||||
|
||||
match argv.get(1).map(|s| s.as_str()) {
|
||||
Some("-") | None => unsafe { File::from_raw_fd(0) }, // stdin as a file
|
||||
Some("-") | None => {
|
||||
let stdin = 0; // get stdin as a file descriptor
|
||||
if unsafe { libc::isatty(stdin) } == 0 {
|
||||
unsafe { File::from_raw_fd(stdin) }
|
||||
} else { File::open("/dev/null").unwrap() }
|
||||
},
|
||||
Some(path) => {
|
||||
std::fs::File::open(path).unwrap_or_else(|_| {
|
||||
eprintln!(
|
||||
|
Loading…
Reference in New Issue
Block a user