summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/stream.ml11
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/stream.ml b/lib/stream.ml
index 29b6425..5da4aea 100644
--- a/lib/stream.ml
+++ b/lib/stream.ml
@@ -1,5 +1,12 @@
open Lwt.Syntax
let start domain : Portal.t Lwt.t =
- let+ stream, push = Portal.connect domain
- in stream, push
+ let* stream, _push = Portal.connect domain
+ in let push = function
+ | None -> _push (Some Portal.stanza_close);
+ _push None;
+ | anything -> _push anything
+ in Some (Portal.stanza_open domain) |> push;
+ (* TODO: check this is a good stanza *)
+ let+ _ = Lwt_stream.get stream
+ in stream, push