aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2013-04-08 22:08:30 -0500
committerJesse Luehrs <doy@tozt.net>2013-04-08 22:09:03 -0500
commit9289b18119a0b8636a014a396bd0b2174ee49e3a (patch)
tree0b2e075e9d1b8913ac357aa2dbb323160ddf7e3d
parentad2578a7ad98de9171400aea20c38f3ca237d88e (diff)
downloadrust-term-9289b18119a0b8636a014a396bd0b2174ee49e3a.tar.gz
rust-term-9289b18119a0b8636a014a396bd0b2174ee49e3a.zip
add some notes so i stop trying to fix things that aren't fixable yet
-rw-r--r--src/info.rs2
-rw-r--r--src/util.rs3
2 files changed, 5 insertions, 0 deletions
diff --git a/src/info.rs b/src/info.rs
index e4aa546..8056180 100644
--- a/src/info.rs
+++ b/src/info.rs
@@ -245,6 +245,8 @@ extern mod c {
}
// tiparm uses varargs, which you can't bind from rust yet
+// actually, you sort of probably can? there's just an llvm assertion that
+// prevents multiple bindings to the same function from working (rust/#5791)
#[link_name = "curses_helper"]
extern mod helper {
fn tiparm1(s: *c_char, p1: c_int) -> *c_char;
diff --git a/src/util.rs b/src/util.rs
index 149f425..637668c 100644
--- a/src/util.rs
+++ b/src/util.rs
@@ -1,6 +1,9 @@
use core::libc::c_int;
// XXX huge hack until there's a better built-in way to do this
+// can't use core::pipes::select or core::comm::selecti because there's no
+// way to get a background task to quit if it's blocking on an io call
+// this will need to wait on the real libuv bindings
pub fn timed_read (timeout: int) -> Option<char> {
let first = unsafe { io_helper::timed_read(timeout as c_int) };
if first < 0 {