gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnunet-nim] 01/02: GNUNET_SCHEDULER_add does not work anymore before fi


From: gnunet
Subject: [gnunet-nim] 01/02: GNUNET_SCHEDULER_add does not work anymore before first call to GNUNET_SCHEDULER_do_work
Date: Fri, 10 Jul 2020 18:14:45 +0200

This is an automated email from the git hooks/post-receive script.

lurchi pushed a commit to branch master
in repository gnunet-nim.

commit 17b7bf0168c20e3fe39f8bd6be320a468e638961
Author: Christian Ulrich <christian@ulrich.earth>
AuthorDate: Fri Jul 10 18:08:11 2020 +0200

    GNUNET_SCHEDULER_add does not work anymore before first call to 
GNUNET_SCHEDULER_do_work
---
 src/gnunet_nim/cadet.nim | 19 ++++---------------
 1 file changed, 4 insertions(+), 15 deletions(-)

diff --git a/src/gnunet_nim/cadet.nim b/src/gnunet_nim/cadet.nim
index b079f52..64991d7 100644
--- a/src/gnunet_nim/cadet.nim
+++ b/src/gnunet_nim/cadet.nim
@@ -140,18 +140,7 @@ proc disconnect(cadetHandle: ptr CadetHandle) =
 proc shutdownCb(cls: pointer) {.cdecl.} =
   disconnect(cast[ptr CadetHandle](cls))
 
-proc cadetConnectCb(cls: pointer) {.cdecl.} =
-  let app = cast[ptr GnunetApplication](cls)
-  var future: FutureBase
-  if app.connectFutures.take("cadet", future):
-    var cadetHandle: ref CadetHandle
-    new(cadetHandle, proc(handle: ref CadetHandle) = disconnect(addr handle[]))
-    cadetHandle.handle = GNUNET_CADET_connect(app.configHandle)
-    cadetHandle.shutdownTask = GNUNET_SCHEDULER_add_shutdown(shutdownCb,
-                                                             addr 
cadetHandle[])
-    Future[ref CadetHandle](future).complete(cadetHandle)
-
-proc initCadet*(app: ref GnunetApplication): Future[ref CadetHandle] =
-  result = newFuture[ref CadetHandle]("connectCadet")
-  app.connectFutures.add("cadet", result)
-  discard GNUNET_SCHEDULER_add_now(cadetConnectCb, addr app[])
+proc initCadet*(app: ref GnunetApplication): ref CadetHandle =
+  new(result, proc(handle: ref CadetHandle) = disconnect(addr handle[]))
+  result.handle = GNUNET_CADET_connect(app.configHandle)
+  result.shutdownTask = GNUNET_SCHEDULER_add_shutdown(shutdownCb, addr 
result[])

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]