When test_gnunet_service_arm runs, it fails for me.
Debugging shows that it segfaults while loading udp plugin (LoadLibrary()
call). The crash happens deep in W32 libs, so i don't know exactly why this
happens.

The change that introduced this error happened somewhere between 23 Feb and 28
Mar of 2015, W32 buildslave (or buildmaster) didn't work at the time, so we
don't have the precise bot reports for that period.

After git-bisecting i found that
27a9e1b1a7e7c1454eae1337c8c63a4fa2d722f6 is the first bad commit
commit 27a9e1b1a7e7c1454eae1337c8c63a4fa2d722f6
Author: grothoff <grothoff@140774ce-b5e7-0310-ab8b-a85725594a96>
Date:   Sat Mar 7 20:18:54 2015 +0000

    simplify test, log failure cause

    git-svn-id: https://gnunet.org/svn/gnunet@35356
140774ce-b5e7-0310-ab8b-a85725594a96

The commit does not touch udp, but does change test_gnunet_service_arm. It's
full of style fixes (hey, grothoff! Thank you for mixing style fixes and
meaningful code changes!), but does have this noticeable chunk of code removed:

-  char *armconfig;
-
-  if (NULL != cfgfile)
-  {
-    if (GNUNET_OK !=
-        GNUNET_CONFIGURATION_get_value_filename (c, "arm", "CONFIG",
-                                                 &armconfig))
-    {
-      GNUNET_CONFIGURATION_set_value_string ((struct
GNUNET_CONFIGURATION_Handle *) c,
-                                             "arm", "CONFIG",
-                                             cfgfile);
-    }
-    else
-      GNUNET_free (armconfig);
-  }

No explanation is given other than "simplify test, log failure cause" (hey,
grothoff! Thank you for almost never leaving descriptive commit messages!).

Note that other ARM tests do have this chunk of code.

Adding this chunk back solves the problem for me - test_gnunet_service_arm does
not crash. Here's a patch.

-- 
O< ascii ribbon - stop html email! - www.asciiribbon.org
From fef6e0716a6bbca8096414b4e7cfd923f720da7e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=A0=D1=83=D1=81=D0=BB=D0=B0=D0=BD=20=D0=98=D0=B6=D0=B1?=
 =?UTF-8?q?=D1=83=D0=BB=D0=B0=D1=82=D0=BE=D0=B2?= <lrn1...@gmail.com>
Date: Fri, 24 Apr 2015 00:35:32 +0000
Subject: [PATCH] Partially revert r35356

---
 src/arm/test_gnunet_service_arm.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/src/arm/test_gnunet_service_arm.c 
b/src/arm/test_gnunet_service_arm.c
index 3e4b9db..465652e 100644
--- a/src/arm/test_gnunet_service_arm.c
+++ b/src/arm/test_gnunet_service_arm.c
@@ -38,6 +38,7 @@
 
 #define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
 
+static const struct GNUNET_CONFIGURATION_Handle *cfg;
 
 static int ret = 1;
 
@@ -172,6 +173,20 @@ run (void *cls,
      const char *cfgfile,
      const struct GNUNET_CONFIGURATION_Handle *c)
 {
+  char *armconfig;
+  cfg = c;
+  if (NULL != cfgfile)
+  {
+    if (GNUNET_OK != GNUNET_CONFIGURATION_get_value_filename (cfg, "arm",
+        "CONFIG", &armconfig))
+    {
+      GNUNET_CONFIGURATION_set_value_string ((struct 
GNUNET_CONFIGURATION_Handle
+                                              *) cfg, "arm", "CONFIG",
+                                             cfgfile);
+    }
+    else
+      GNUNET_free (armconfig);
+  }
   arm = GNUNET_ARM_connect (c, NULL, NULL);
   GNUNET_ARM_request_service_start (arm, "arm",
                                     GNUNET_OS_INHERIT_STD_OUT_AND_ERR,
-- 
1.8.5.3

Attachment: 0x922360B0.asc
Description: application/pgp-keys

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
GNUnet-developers mailing list
GNUnet-developers@gnu.org
https://lists.gnu.org/mailman/listinfo/gnunet-developers

Reply via email to