diff options
author | Mike Morris <michael.patrick.morris@gmail.com> | 2014-09-02 17:30:35 -0400 |
---|---|---|
committer | Mike Morris <michael.patrick.morris@gmail.com> | 2014-09-02 17:30:35 -0400 |
commit | b18cf767c04e57f707c9a5dcc27706e6ec72e9e3 (patch) | |
tree | c7e5dfe32a7498be5cb11b0a2fcf26536c4fb58b /test | |
parent | a8021e84f876c52b5da7428a019cb062e5f80537 (diff) | |
download | qtlocation-mapboxgl-b18cf767c04e57f707c9a5dcc27706e6ec72e9e3.tar.gz |
use std::fopen/std::fread instead of libuv, thanks @springmeyer
Diffstat (limited to 'test')
-rw-r--r-- | test/fixtures/fixture_request.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/fixtures/fixture_request.cpp b/test/fixtures/fixture_request.cpp index 11b308fce1..8658592382 100644 --- a/test/fixtures/fixture_request.cpp +++ b/test/fixtures/fixture_request.cpp @@ -3,6 +3,7 @@ #include <mbgl/util/uv_detail.hpp> #include <mbgl/util/url.hpp> #include <mbgl/platform/log.hpp> +#include <iostream> const std::string base_directory = []{ std::string fn = __FILE__; @@ -35,6 +36,20 @@ platform::request_http(const std::string &url, int err; + std::string body; + FILE *file = std::fopen(clean_url.c_str(),"rb"); + + if (file != NULL) + { + std::fseek(file, 0, SEEK_END); + std::size_t file_size = std::ftell(file); + std::fseek(file, 0, SEEK_SET); + body.resize(file_size); + std::fread(&body[0], file_size, 1, file); + std::fclose(file); + } + + /* uv_fs_t open_req; err = uv_fs_open(l, &open_req, clean_url.c_str(), O_RDONLY, S_IRUSR, nullptr); uv_fs_req_cleanup(&open_req); @@ -67,9 +82,12 @@ platform::request_http(const std::string &url, uv_buf_t uvbuf = uv_buf_init(const_cast<char *>(body.data()), body.size()); uv_fs_t read_req; + std::cerr << "fd: " << fd << '\n'; + std::cerr << "uvbuf.len: " << uvbuf.len << '\n'; err = uv_fs_read(l, &read_req, fd, &uvbuf, 1, 0, nullptr); uv_fs_req_cleanup(&read_req); if (err < 0) { + std::cerr << "err: " << read_req.errorno << '\n'; req->res->code = err; req->res->error_message = uv_strerror(uv_last_error(l)); Log::Warning(Event::HttpRequest, err, url + ": " + uv_strerror(uv_last_error(l))); @@ -88,6 +106,7 @@ platform::request_http(const std::string &url, req->complete(); return req; } + */ req->res->body.swap(body); req->res->code = 200; |