summaryrefslogtreecommitdiff
path: root/tests/chat.ur
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2009-03-28 11:13:36 -0400
committerGravatar Adam Chlipala <adamc@hcoop.net>2009-03-28 11:13:36 -0400
commit00b2a86f9af8d57b6ba134cdd6b3a1ce72ea8a5f (patch)
treeefba87fb9b2c9f5f7349dbe277b4a928bc0a2e66 /tests/chat.ur
parent474fa30ad829b58eba6074e7ee14307418b07358 (diff)
Marshalcheck
Diffstat (limited to 'tests/chat.ur')
-rw-r--r--tests/chat.ur11
1 files changed, 10 insertions, 1 deletions
diff --git a/tests/chat.ur b/tests/chat.ur
index 2d79cd00..b982836d 100644
--- a/tests/chat.ur
+++ b/tests/chat.ur
@@ -25,7 +25,15 @@ fun chat id =
logTail <- source logHead;
let
- fun join () = subscribe ch
+ fun getCh () =
+ r <- oneRow (SELECT t.Chan FROM t WHERE t.Id = {[id]});
+ case r.T.Chan of
+ None => error <xml>Channel disappeared</xml>
+ | Some ch => return ch
+
+ fun join () =
+ ch <- getCh ();
+ subscribe ch
fun onload () =
let
@@ -42,6 +50,7 @@ fun chat id =
end
fun speak line =
+ ch <- getCh ();
send ch line
fun doSpeak () =