aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe-external-packages/src/symfony/process/pipes
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe-external-packages/src/symfony/process/pipes')
-rw-r--r--crates/shirabe-external-packages/src/symfony/process/pipes/abstract_pipes.rs4
-rw-r--r--crates/shirabe-external-packages/src/symfony/process/pipes/pipes_interface.rs3
-rw-r--r--crates/shirabe-external-packages/src/symfony/process/pipes/unix_pipes.rs34
-rw-r--r--crates/shirabe-external-packages/src/symfony/process/pipes/windows_pipes.rs7
4 files changed, 2 insertions, 46 deletions
diff --git a/crates/shirabe-external-packages/src/symfony/process/pipes/abstract_pipes.rs b/crates/shirabe-external-packages/src/symfony/process/pipes/abstract_pipes.rs
index f9fb251d..8741926c 100644
--- a/crates/shirabe-external-packages/src/symfony/process/pipes/abstract_pipes.rs
+++ b/crates/shirabe-external-packages/src/symfony/process/pipes/abstract_pipes.rs
@@ -101,8 +101,4 @@ impl AbstractPipes {
None
}
-
- pub fn handle_error(&mut self, _type: i64, msg: String) {
- self.last_error = Some(msg);
- }
}
diff --git a/crates/shirabe-external-packages/src/symfony/process/pipes/pipes_interface.rs b/crates/shirabe-external-packages/src/symfony/process/pipes/pipes_interface.rs
index 92d584d8..46609bb8 100644
--- a/crates/shirabe-external-packages/src/symfony/process/pipes/pipes_interface.rs
+++ b/crates/shirabe-external-packages/src/symfony/process/pipes/pipes_interface.rs
@@ -19,9 +19,6 @@ pub trait PipesInterface: std::fmt::Debug {
/// Returns if the current state has open file handles or pipes.
fn are_open(&self) -> bool;
- /// Returns if pipes are able to read output.
- fn have_read_support(&self) -> bool;
-
/// Closes file handles and pipes.
fn close(&mut self);
diff --git a/crates/shirabe-external-packages/src/symfony/process/pipes/unix_pipes.rs b/crates/shirabe-external-packages/src/symfony/process/pipes/unix_pipes.rs
index aff2a544..a7026318 100644
--- a/crates/shirabe-external-packages/src/symfony/process/pipes/unix_pipes.rs
+++ b/crates/shirabe-external-packages/src/symfony/process/pipes/unix_pipes.rs
@@ -11,22 +11,13 @@ use shirabe_php_shim::{Descriptor, PhpMixed, PhpResource};
pub struct UnixPipes {
inner: AbstractPipes,
tty_mode: Option<bool>,
- pty_mode: bool,
- have_read_support: bool,
}
impl UnixPipes {
- pub fn new(
- tty_mode: Option<bool>,
- pty_mode: bool,
- input: PhpMixed,
- have_read_support: bool,
- ) -> Self {
+ pub fn new(tty_mode: Option<bool>, input: PhpMixed) -> Self {
Self {
inner: AbstractPipes::new(input),
tty_mode,
- pty_mode,
- have_read_support,
}
}
}
@@ -35,23 +26,12 @@ fn descriptor(items: &[&str]) -> Descriptor {
match items {
["pipe", mode] => Descriptor::Pipe(mode.to_string()),
["file", path, mode] => Descriptor::File(path.to_string(), mode.to_string()),
- ["pty"] => Descriptor::Pty,
_ => panic!("unsupported descriptor spec: {:?}", items),
}
}
impl PipesInterface for UnixPipes {
fn get_descriptors(&mut self) -> Vec<Descriptor> {
- if !self.have_read_support {
- let nullstream =
- shirabe_php_shim::fopen("/dev/null", "c").expect("fopen('/dev/null') failed");
- return vec![
- descriptor(&["pipe", "r"]),
- Descriptor::Resource(nullstream.clone()),
- Descriptor::Resource(nullstream),
- ];
- }
-
if self.tty_mode == Some(true) {
return vec![
descriptor(&["file", "/dev/tty", "r"]),
@@ -60,14 +40,6 @@ impl PipesInterface for UnixPipes {
];
}
- if self.pty_mode && Process::is_pty_supported() {
- return vec![
- descriptor(&["pty"]),
- descriptor(&["pty"]),
- descriptor(&["pty"]),
- ];
- }
-
vec![
descriptor(&["pipe", "r"]),
descriptor(&["pipe", "w"]),
@@ -146,10 +118,6 @@ impl PipesInterface for UnixPipes {
read
}
- fn have_read_support(&self) -> bool {
- self.have_read_support
- }
-
fn are_open(&self) -> bool {
!self.inner.pipes.is_empty()
}
diff --git a/crates/shirabe-external-packages/src/symfony/process/pipes/windows_pipes.rs b/crates/shirabe-external-packages/src/symfony/process/pipes/windows_pipes.rs
index f721d2b4..72a28e7d 100644
--- a/crates/shirabe-external-packages/src/symfony/process/pipes/windows_pipes.rs
+++ b/crates/shirabe-external-packages/src/symfony/process/pipes/windows_pipes.rs
@@ -13,11 +13,10 @@ pub struct WindowsPipes {
file_handles: IndexMap<i64, PhpResource>,
lock_handles: IndexMap<i64, PhpResource>,
read_bytes: IndexMap<i64, i64>,
- have_read_support: bool,
}
impl WindowsPipes {
- pub fn new(_input: PhpMixed, _have_read_support: bool) -> Self {
+ pub fn new(_input: PhpMixed) -> Self {
// Windows-only path: never constructed on POSIX (DIRECTORY_SEPARATOR is "/").
todo!()
}
@@ -42,10 +41,6 @@ impl PipesInterface for WindowsPipes {
todo!()
}
- fn have_read_support(&self) -> bool {
- self.have_read_support
- }
-
fn are_open(&self) -> bool {
!self.inner.pipes.is_empty() && !self.file_handles.is_empty()
}