/* TESH (Test Shell) -- mini shell specialized in running test units */
-/* Copyright (c) 2007, 2008, 2009, 2010. The SimGrid Team.
+/* Copyright (c) 2007-2014. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
#pragma hdrstop
#endif
-#include "simgrid_config.h" //For getline, keep that include first
-
#include "tesh.h"
#include "xbt.h"
int timeout_value = 5; /* child timeout value */
int sort_len = 19; /* length of the prefix to sort */
char *option;
-int coverage = 0; /* whether the code coverage is enable */
+int coverage = 0; /* whether the code coverage is enabled */
rctx_t rctx;
const char *testsuite_name;
buff = xbt_strbuff_new();
rctx = rctx_new();
- while (getline(&line, &len, IN) != -1) {
+ while (xbt_getline(&line, &len, IN) != -1) {
line_num++;
/* Count the line length while checking wheather it's blank */
} else {
to_be_continued = 1;
line[linelen - 2] = '\0';
- linelen -= 2;
if (!buff->used)
buffbegin = line_num;
}
int i;
char *eq = NULL;
char *key = NULL;
- env = xbt_dict_new();
+ env = xbt_dict_new_homogeneous(xbt_free_f);
for (i = 0; environ[i]; i++) {
p = environ[i];
eq = strchr(p, '=');
key = bprintf("%.*s", (int) (eq - p), p);
- xbt_dict_set(env, key, xbt_strdup(eq + 1), xbt_free_f);
+ xbt_dict_set(env, key, xbt_strdup(eq + 1), NULL);
free(key);
}
}
int i;
char *suitename = NULL;
struct sigaction newact;
+
+ XBT_LOG_CONNECT(tesh);
xbt_init(&argc, argv);
rctx_init();
parse_environ();
char *eq = strchr(argv[i+1], '=');
xbt_assert(eq,"The argument of --setenv must contain a '=' (got %s instead)",argv[i+1]);
char *key = bprintf("%.*s", (int) (eq - argv[i+1]), argv[i+1]);
- xbt_dict_set(env, key, xbt_strdup(eq + 1), xbt_free_f);
+ xbt_dict_set(env, key, xbt_strdup(eq + 1), NULL);
XBT_INFO("setting environment variable '%s' to '%s'", key, eq+1);
free(key);
memmove(argv + i, argv + i + 2, (argc - i - 1) * sizeof(char *));
exit(1);
}
if (!option){ //if option is NULL
- option = bprintf("--cfg=%s",argv[i+1]);
+ option = bprintf("--cfg=%s",argv[i+1]);
} else {
char *newoption = bprintf("%s --cfg=%s", option, argv[i+1]);
free(option);
i -= 2;
}
else if (!strcmp(argv[i], "--enable-coverage" )){
- coverage = 1;
- XBT_INFO("Enable coverage");
- memmove(argv + i, argv + i + 1, (argc - i - 1) * sizeof(char *));
- argc -= 1;
- i -= 1;
+ coverage = 1;
+ XBT_INFO("Enable coverage");
+ memmove(argv + i, argv + i + 1, (argc - i - 1) * sizeof(char *));
+ argc -= 1;
+ i -= 1;
}
}