Skip to content

Commit 42046bd

Browse files
committed
---
yaml --- r: 40272 b: refs/heads/dist-snap c: b62844e h: refs/heads/master v: v3
1 parent 6a17365 commit 42046bd

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: a810c03263670238bccd64cabb12a23a46e3a278
99
refs/heads/incoming: e90142e536c150df0d9b4b2f11352152177509b5
10-
refs/heads/dist-snap: a90020fe8dd8be8615df82e6294408bfed82a767
10+
refs/heads/dist-snap: b62844e755d36fddff303c0639303bb0f56c5d41
1111
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1212
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1313
refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0

branches/dist-snap/src/libcore/pipes.rs

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -511,9 +511,9 @@ pub fn try_recv<T: Send, Tbuffer: Send>(p: RecvPacketBuffered<T, Tbuffer>)
511511
/// Returns true if messages are available.
512512
pub pure fn peek<T: Send, Tb: Send>(p: &RecvPacketBuffered<T, Tb>) -> bool {
513513
match unsafe {(*p.header()).state} {
514-
Empty => false,
514+
Empty | Terminated => false,
515515
Blocked => fail ~"peeking on blocked packet",
516-
Full | Terminated => true
516+
Full => true
517517
}
518518
}
519519

@@ -1234,4 +1234,16 @@ pub mod test {
12341234

12351235
recv_one(move p)
12361236
}
1237+
1238+
#[test]
1239+
fn test_peek_terminated() {
1240+
let (chan, port): (Chan<int>, Port<int>) = stream();
1241+
1242+
{
1243+
// Destroy the channel
1244+
let _chan = move chan;
1245+
}
1246+
1247+
assert !port.peek();
1248+
}
12371249
}

0 commit comments

Comments
 (0)