aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/core/http/httpcli_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'test/core/http/httpcli_test.cc')
-rw-r--r--test/core/http/httpcli_test.cc17
1 files changed, 12 insertions, 5 deletions
diff --git a/test/core/http/httpcli_test.cc b/test/core/http/httpcli_test.cc
index 259e3aa463..6ad0753f7e 100644
--- a/test/core/http/httpcli_test.cc
+++ b/test/core/http/httpcli_test.cc
@@ -154,10 +154,17 @@ int main(int argc, char** argv) {
int arg_shift = 0;
/* figure out where we are */
char* root;
- if (lslash) {
- root = static_cast<char*>(gpr_malloc((size_t)(lslash - me + 1)));
+ if (lslash != nullptr) {
+ /* Hack for bazel target */
+ if ((unsigned)(lslash - me) >= (sizeof("http") - 1) &&
+ strncmp(me + (lslash - me) - sizeof("http") + 1, "http",
+ sizeof("http") - 1) == 0) {
+ lslash = me + (lslash - me) - sizeof("http");
+ }
+ root = static_cast<char*>(
+ gpr_malloc((size_t)(lslash - me + sizeof("/../.."))));
memcpy(root, me, (size_t)(lslash - me));
- root[lslash - me] = 0;
+ memcpy(root + (lslash - me), "/../..", sizeof("/../.."));
} else {
root = gpr_strdup(".");
}
@@ -167,8 +174,8 @@ int main(int argc, char** argv) {
args[0] = gpr_strdup(argv[1]);
} else {
arg_shift = 1;
- gpr_asprintf(&args[0], "%s/../../tools/distrib/python_wrapper.sh", root);
- gpr_asprintf(&args[1], "%s/../../test/core/http/test_server.py", root);
+ gpr_asprintf(&args[0], "%s/test/core/http/python_wrapper.sh", root);
+ gpr_asprintf(&args[1], "%s/test/core/http/test_server.py", root);
}
/* start the server */