From 705ddf68a5957a84c0e96beaf5a6e25b1166dc74 Mon Sep 17 00:00:00 2001 From: Young Hahn Date: Sun, 1 Jun 2014 13:15:36 -0400 Subject: [PATCH 1/6] Add gyp entry to copy style.min.js to PRODUCT_DIR --- linux/llmr-app.gyp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/linux/llmr-app.gyp b/linux/llmr-app.gyp index 93b08364e..231061358 100644 --- a/linux/llmr-app.gyp +++ b/linux/llmr-app.gyp @@ -51,7 +51,22 @@ ], 'dependencies': [ '../llmr.gyp:llmr-x86', + 'default_stylesheet', ], }, + { + 'target_name': 'default_stylesheet', + 'type': 'none', + 'hard_dependency': 1, + 'dependencies': [ + '../llmr.gyp:build_stylesheet' + ], + 'copies': [ + { + 'files': [ '<(SHARED_INTERMEDIATE_DIR)/bin/style.min.js' ], + 'destination': '<(PRODUCT_DIR)' + } + ] + } ], } From 04610023deab950a2bbca9d5f04129d981c5d6b2 Mon Sep 17 00:00:00 2001 From: Young Hahn Date: Sun, 1 Jun 2014 13:50:32 -0400 Subject: [PATCH 2/6] Load stylesheet from disk. --- linux/main.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/linux/main.cpp b/linux/main.cpp index 2c7440c87..f796a2351 100644 --- a/linux/main.cpp +++ b/linux/main.cpp @@ -3,6 +3,8 @@ #include #include +#include +#include #include "../common/settings_json.hpp" #include "../common/glfw_view.hpp" @@ -40,6 +42,11 @@ int main(int argc, char *argv[]) { sigIntHandler.sa_flags = 0; sigaction(SIGINT, &sigIntHandler, NULL); + // read default stylesheet from disk + std::ifstream stylefile("./build/Release/style.min.js"); + std::stringstream stylejson; + stylejson << stylefile.rdbuf(); + view = new GLFWView(); llmr::Map map(*view); @@ -49,6 +56,9 @@ int main(int argc, char *argv[]) { map.setAngle(settings.angle); map.setDebug(settings.debug); + // Load style + map.setStyleJSON(stylejson.str()); + int ret = view->run(); // Save settings From 552246f4b037650b0cc57e42444ccea2b5356fd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20Ka=CC=88fer?= Date: Sun, 1 Jun 2014 22:10:41 +0200 Subject: [PATCH 3/6] handle all CURL actions --- common/curl_request.cpp | 39 +++++++++++++++++---------------------- 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/common/curl_request.cpp b/common/curl_request.cpp index 7eae7fd95..e5edb5aba 100644 --- a/common/curl_request.cpp +++ b/common/curl_request.cpp @@ -190,32 +190,27 @@ void curl_perform(uv_poll_t *req, int /*status*/, int events) { } int handle_socket(CURL * /*easy*/, curl_socket_t s, int action, void * /*userp*/, void *socketp) { - curl_context *context; - if (action == CURL_POLL_IN || action == CURL_POLL_OUT) { - if (socketp) { - context = (curl_context *)socketp; - } else { - context = create_curl_context(s); - } - curl_multi_assign(curl_multi, s, (void *)context); + curl_context *context = nullptr; + + if (socketp) { + context = (curl_context *)socketp; + } else if (action != CURL_POLL_REMOVE) { + context = create_curl_context(s); } - switch (action) { - case CURL_POLL_IN: - uv_poll_start(&context->poll_handle, UV_READABLE, curl_perform); - break; - case CURL_POLL_OUT: - uv_poll_start(&context->poll_handle, UV_WRITABLE, curl_perform); - break; - case CURL_POLL_REMOVE: - if (socketp) { - uv_poll_stop(&((curl_context *)socketp)->poll_handle); - destroy_curl_context((curl_context *)socketp); + if (context) { + curl_multi_assign(curl_multi, s, (void *)context); + if (action == CURL_POLL_IN || action == CURL_POLL_INOUT) { + uv_poll_start(&context->poll_handle, UV_READABLE, curl_perform); + } + if (action == CURL_POLL_OUT || action == CURL_POLL_INOUT) { + uv_poll_start(&context->poll_handle, UV_WRITABLE, curl_perform); + } + if (action == CURL_POLL_REMOVE && socketp) { + uv_poll_stop(&context->poll_handle); + destroy_curl_context(context); curl_multi_assign(curl_multi, s, NULL); } - break; - default: - abort(); } return 0; From 6bbac8559f385043f59af25dd6517a5ae080498d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20Ka=CC=88fer?= Date: Sun, 1 Jun 2014 22:28:12 +0200 Subject: [PATCH 4/6] run executable with correct working dir --- Makefile | 2 +- linux/main.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 26d3d67fd..b6e034da8 100644 --- a/Makefile +++ b/Makefile @@ -53,7 +53,7 @@ linux: config.gypi linux/llmr-app.gyp node # Executes the Linux binary run-linux: linux - build/$(BUILDTYPE)/mapbox-gl + (cd build/$(BUILDTYPE) && ./mapbox-gl) diff --git a/linux/main.cpp b/linux/main.cpp index f796a2351..bee52d901 100644 --- a/linux/main.cpp +++ b/linux/main.cpp @@ -43,7 +43,7 @@ int main(int argc, char *argv[]) { sigaction(SIGINT, &sigIntHandler, NULL); // read default stylesheet from disk - std::ifstream stylefile("./build/Release/style.min.js"); + std::ifstream stylefile("./style.min.js"); std::stringstream stylejson; stylejson << stylefile.rdbuf(); From 15c12701e3dacb40aa3a1bead587e9f8fb6433d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20Ka=CC=88fer?= Date: Mon, 2 Jun 2014 12:01:33 +0200 Subject: [PATCH 5/6] error early when it can't read the style file --- linux/main.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/linux/main.cpp b/linux/main.cpp index bee52d901..ec4dd4957 100644 --- a/linux/main.cpp +++ b/linux/main.cpp @@ -44,6 +44,10 @@ int main(int argc, char *argv[]) { // read default stylesheet from disk std::ifstream stylefile("./style.min.js"); + if (!stylefile.good()) { + fprintf(stder, "Cannot read style file\n"); + return 1; + } std::stringstream stylejson; stylejson << stylefile.rdbuf(); From 3019cc502a59a13eaa01c442c779e1e4aba4a887 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20Ka=CC=88fer?= Date: Mon, 2 Jun 2014 12:34:04 +0200 Subject: [PATCH 6/6] typo --- linux/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux/main.cpp b/linux/main.cpp index ec4dd4957..25898fab2 100644 --- a/linux/main.cpp +++ b/linux/main.cpp @@ -45,7 +45,7 @@ int main(int argc, char *argv[]) { // read default stylesheet from disk std::ifstream stylefile("./style.min.js"); if (!stylefile.good()) { - fprintf(stder, "Cannot read style file\n"); + fprintf(stderr, "Cannot read style file\n"); return 1; } std::stringstream stylejson;