gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] [taler-twister] 02/04: use curl_multi_wait(). Less code nee


From: gnunet
Subject: [GNUnet-SVN] [taler-twister] 02/04: use curl_multi_wait(). Less code needed.
Date: Sun, 03 Jun 2018 21:13:28 +0200

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

marcello pushed a commit to branch master
in repository twister.

commit 9dc679300003ee9cf33d90512f760f0a3599d0ee
Author: Marcello Stanisci <address@hidden>
AuthorDate: Fri Jun 1 10:26:08 2018 +0200

    use curl_multi_wait().  Less code needed.
---
 src/twister/taler-twister-service.c | 79 ++++++-------------------------------
 1 file changed, 13 insertions(+), 66 deletions(-)

diff --git a/src/twister/taler-twister-service.c 
b/src/twister/taler-twister-service.c
index 276b514..006531c 100644
--- a/src/twister/taler-twister-service.c
+++ b/src/twister/taler-twister-service.c
@@ -553,73 +553,17 @@ static void
 curl_download_prepare ()
 {
   CURLMcode mret;
-  fd_set rs;
-  fd_set ws;
-  fd_set es;
-  int max;
-  struct GNUNET_NETWORK_FDSet *grs;
-  struct GNUNET_NETWORK_FDSet *gws;
-  long to;
-  struct GNUNET_TIME_Relative rtime;
+  int numfds;
 
-  if (NULL != curl_download_task)
-  {
-    GNUNET_SCHEDULER_cancel (curl_download_task);
-    curl_download_task = NULL;
-  }
-  max = -1;
-  FD_ZERO (&rs);
-  FD_ZERO (&ws);
-  FD_ZERO (&es);
-  if (CURLM_OK != (mret = curl_multi_fdset (curl_multi,
-                                           &rs,
-                                           &ws,
-                                           &es,
-                                           &max)))
-  {
-    GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
-                "%s failed at %s:%d: `%s'\n",
-                "curl_multi_fdset",
-               __FILE__,
-               __LINE__,
-                curl_multi_strerror (mret));
-    return;
-  }
-  to = -1;
-  GNUNET_break (CURLM_OK ==
-               curl_multi_timeout (curl_multi,
-                                   &to));
-  if (-1 == to)
-    rtime = GNUNET_TIME_UNIT_FOREVER_REL;
-  else
-    rtime = GNUNET_TIME_relative_multiply
-      (GNUNET_TIME_UNIT_MILLISECONDS, to);
-  if (-1 != max)
-  {
-    grs = GNUNET_NETWORK_fdset_create ();
-    gws = GNUNET_NETWORK_fdset_create ();
-    GNUNET_NETWORK_fdset_copy_native (grs,
-                                     &rs,
-                                     max + 1);
-    GNUNET_NETWORK_fdset_copy_native (gws,
-                                     &ws,
-                                     max + 1);
-    curl_download_task = GNUNET_SCHEDULER_add_select
-      (GNUNET_SCHEDULER_PRIORITY_DEFAULT,
-       rtime,
-       grs, gws,
-       &curl_task_download,
-       curl_multi);
-    GNUNET_NETWORK_fdset_destroy (gws);
-    GNUNET_NETWORK_fdset_destroy (grs);
-  }
-  else
-  {
-    curl_download_task = GNUNET_SCHEDULER_add_delayed
-      (rtime,
-       &curl_task_download,
-       curl_multi);
-  }
+  mret = curl_multi_wait (curl_multi,
+                          NULL,
+                          0,
+                          1000,
+                          &numfds);
+
+  curl_download_task = GNUNET_SCHEDULER_add_now
+     (&curl_task_download,
+      curl_multi);
 }
 
 
@@ -647,6 +591,8 @@ curl_task_download (void *cls)
     running = 0;
     mret = curl_multi_perform (curl_multi,
                               &running);
+
+
     while (NULL != (msg = curl_multi_info_read (curl_multi,
                                                &msgnum)))
     {
@@ -1356,6 +1302,7 @@ create_response (void *cls,
       curl_easy_setopt (hr->curl,
                         CURLOPT_WRITEFUNCTION,
                         &curl_download_cb);
+
       curl_easy_setopt (hr->curl,
                        CURLOPT_WRITEDATA,
                        hr);

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

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