From e5d618459e832a9f41e3f56db314f5ceb7d643a6 Mon Sep 17 00:00:00 2001 From: Dirk Stoecker Date: Thu, 5 Dec 2013 16:19:05 +0100 Subject: [PATCH 1/3] fix gcc errors --- src/render_expired.c | 10 ++++++---- src/render_list.c | 10 ++++++---- src/render_old.c | 6 +++--- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/render_expired.c b/src/render_expired.c index 396066ed..d8825a1d 100644 --- a/src/render_expired.c +++ b/src/render_expired.c @@ -56,7 +56,8 @@ #include "store.h" #include "render_submit_queue.h" -char *tile_dir = HASH_PATH; +const char * tile_dir_default = HASH_PATH; +const char *tile_dir = tile_dir_default; // macros handling our tile marking arrays (these are essentially bit arrays // that have one bit for each tile on the repsective zoom level; since we only @@ -111,7 +112,8 @@ void display_rate(struct timeval start, struct timeval end, int num) int main(int argc, char **argv) { char *spath = strdup(RENDER_SOCKET); - char *mapname = XMLCONFIG_DEFAULT; + const char *mapname_default = XMLCONFIG_DEFAULT; + const char *mapname = mapname_default; int x, y, z; struct timeval start, end; int num_render = 0, num_all = 0, num_read = 0, num_ignore = 0, num_unlink = 0, num_touch = 0; @@ -396,10 +398,10 @@ int main(int argc, char **argv) } free(spath); - if (mapname != XMLCONFIG_DEFAULT) { + if (mapname != mapname_default) { free(mapname); } - if (tile_dir != HASH_PATH) { + if (tile_dir != tile_dir_default) { free(tile_dir); } store->close_storage(store); diff --git a/src/render_list.c b/src/render_list.c index 4f0b6774..c9617809 100644 --- a/src/render_list.c +++ b/src/render_list.c @@ -24,7 +24,8 @@ #include "sys_utils.h" #include "render_submit_queue.h" -char *tile_dir = HASH_PATH; +const char * tile_dir_default = HASH_PATH; +const char *tile_dir = tile_dir_default; #ifndef METATILE #warning("render_list not implemented for non-metatile mode. Feel free to submit fix") @@ -59,7 +60,8 @@ void display_rate(struct timeval start, struct timeval end, int num) int main(int argc, char **argv) { char *spath = strdup(RENDER_SOCKET); - char *mapname = XMLCONFIG_DEFAULT; + const char *mapname_default = XMLCONFIG_DEFAULT; + const char *mapname = mapname_default; int minX=-1, maxX=-1, minY=-1, maxY=-1; int x, y, z; char name[PATH_MAX]; @@ -304,10 +306,10 @@ int main(int argc, char **argv) finish_workers(); free(spath); - if (mapname != XMLCONFIG_DEFAULT) { + if (mapname != mapname_default) { free(mapname); } - if (tile_dir != HASH_PATH) { + if (tile_dir != tile_dir_default) { free(tile_dir); } diff --git a/src/render_old.c b/src/render_old.c index 8d24b617..ddc37570 100644 --- a/src/render_old.c +++ b/src/render_old.c @@ -26,8 +26,8 @@ #include "render_submit_queue.h" #include "sys_utils.h" - -char *tile_dir = HASH_PATH; +const char * tile_dir_default = HASH_PATH; +const char *tile_dir = tile_dir_default; #ifndef METATILE #warning("render_old not implemented for non-metatile mode. Feel free to submit fix") @@ -319,7 +319,7 @@ int main(int argc, char **argv) fclose(hini); free(map); - if (tile_dir != HASH_PATH) { + if (tile_dir != tile_dir_default) { free(tile_dir); } From 5dffe058e6c9e5781bc8f9dd2f2c7aca010797fe Mon Sep 17 00:00:00 2001 From: Dirk Stoecker Date: Thu, 5 Dec 2013 16:35:49 +0100 Subject: [PATCH 2/3] fix gcc errors --- includes/store_file.h | 3 ++- src/mod_tile.c | 3 +-- src/store.c | 3 +-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/includes/store_file.h b/includes/store_file.h index 64ef3554..77caae51 100644 --- a/includes/store_file.h +++ b/includes/store_file.h @@ -8,7 +8,8 @@ extern "C" { #include "store.h" struct storage_backend * init_storage_file(const char * tile_dir); - + int xyzo_to_meta(char *path, size_t len, const char *tile_dir, const char *xmlconfig, const char *options, int x, int y, int z); + #ifdef __cplusplus } #endif diff --git a/src/mod_tile.c b/src/mod_tile.c index d831939d..ecac3fe4 100644 --- a/src/mod_tile.c +++ b/src/mod_tile.c @@ -88,14 +88,13 @@ static int error_message(request_rec *r, const char *format, ...) static int error_message(request_rec *r, const char *format, ...) { va_list ap; - int len; char *msg; va_start(ap, format); msg = malloc(1000*sizeof(char)); if (msg) { - len = vsnprintf(msg, 1000, format, ap); + vsnprintf(msg, 1000, format, ap); //ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, "%s", msg); ap_log_rerror(APLOG_MARK, APLOG_INFO, 0, r, "%s", msg); r->content_type = "text/plain"; diff --git a/src/store.c b/src/store.c index 9bad2453..f9d511c7 100644 --- a/src/store.c +++ b/src/store.c @@ -26,7 +26,6 @@ //TODO: Make this function handle different logging backends, depending on if on compiles it from apache or something else void log_message(int log_lvl, const char *format, ...) { va_list ap; - int len; char *msg = malloc(1000*sizeof(char)); va_start(ap, format); @@ -34,7 +33,7 @@ void log_message(int log_lvl, const char *format, ...) { if (msg) { - len = vsnprintf(msg, 1000, format, ap); + vsnprintf(msg, 1000, format, ap); switch (log_lvl) { case STORE_LOGLVL_DEBUG: fprintf(stderr, "debug: %s\n", msg); From 66e5538dc449ef6703f3fdc8a87809769597fe5a Mon Sep 17 00:00:00 2001 From: Dirk Stoecker Date: Thu, 5 Dec 2013 17:47:04 +0100 Subject: [PATCH 3/3] fix gcc errors --- includes/render_submit_queue.h | 5 +++-- src/daemon.c | 8 +++----- src/render_expired.c | 10 +++------- src/render_list.c | 7 +++---- src/render_old.c | 14 +++++++------- src/render_submit_queue.c | 4 ++-- src/store_file.c | 1 + src/store_file_utils.c | 1 + 8 files changed, 23 insertions(+), 27 deletions(-) diff --git a/includes/render_submit_queue.h b/includes/render_submit_queue.h index a1f9aea2..1183623b 100644 --- a/includes/render_submit_queue.h +++ b/includes/render_submit_queue.h @@ -9,8 +9,9 @@ int work_complete; void enqueue(const char *xmlname, int x, int y, int z); void spawn_workers(int num, const char *socketpath, int maxLoad); -void wait_for_empty_queue(); -void finish_workers(); +void wait_for_empty_queue(void); +void finish_workers(void); +void print_statistics(void); #ifdef __cplusplus } diff --git a/src/daemon.c b/src/daemon.c index e7233fb8..b99c336f 100644 --- a/src/daemon.c +++ b/src/daemon.c @@ -32,14 +32,15 @@ #include "iniparser3.0b/src/iniparser.h" // } +#ifndef MAIN_ALREADY_DEFINED static pthread_t *render_threads; static pthread_t *slave_threads; static struct sigaction sigPipeAction; +static pthread_t stats_thread; +#endif static int exit_pipe_fd; -static pthread_t stats_thread; - static renderd_config config; int noSlaveRenders; @@ -66,7 +67,6 @@ static const char *cmdStr(enum protoCmd c) void send_response(struct item *item, enum protoCmd rsp, int render_time) { struct protocol *req = &item->req; struct item *prev; - int ret; request_queue_remove_request(render_request_queue, item, render_time); @@ -87,9 +87,7 @@ void send_response(struct item *item, enum protoCmd rsp, int render_time) { enum protoCmd rx_request(struct protocol *req, int fd) { - struct protocol *reqnew; struct item *item; - enum protoCmd pend; // Upgrade version 1 and 2 to version 3 if (req->ver == 1) { diff --git a/src/render_expired.c b/src/render_expired.c index d8825a1d..59f9edb3 100644 --- a/src/render_expired.c +++ b/src/render_expired.c @@ -57,7 +57,6 @@ #include "render_submit_queue.h" const char * tile_dir_default = HASH_PATH; -const char *tile_dir = tile_dir_default; // macros handling our tile marking arrays (these are essentially bit arrays // that have one bit for each tile on the repsective zoom level; since we only @@ -114,11 +113,11 @@ int main(int argc, char **argv) char *spath = strdup(RENDER_SOCKET); const char *mapname_default = XMLCONFIG_DEFAULT; const char *mapname = mapname_default; + const char *tile_dir = tile_dir_default; int x, y, z; struct timeval start, end; int num_render = 0, num_all = 0, num_read = 0, num_ignore = 0, num_unlink = 0, num_touch = 0; int c; - int all=0; int numThreads = 1; int deleteFrom = -1; int touchFrom = -1; @@ -164,9 +163,6 @@ int main(int argc, char **argv) break; switch (c) { - case 'a': /* -a, --all */ - all=1; - break; case 's': /* -s, --socket */ spath = strdup(optarg); break; @@ -399,10 +395,10 @@ int main(int argc, char **argv) free(spath); if (mapname != mapname_default) { - free(mapname); + free((void *)mapname); } if (tile_dir != tile_dir_default) { - free(tile_dir); + free((void *)tile_dir); } store->close_storage(store); free(store); diff --git a/src/render_list.c b/src/render_list.c index c9617809..bc0f032b 100644 --- a/src/render_list.c +++ b/src/render_list.c @@ -25,7 +25,6 @@ #include "render_submit_queue.h" const char * tile_dir_default = HASH_PATH; -const char *tile_dir = tile_dir_default; #ifndef METATILE #warning("render_list not implemented for non-metatile mode. Feel free to submit fix") @@ -62,12 +61,12 @@ int main(int argc, char **argv) char *spath = strdup(RENDER_SOCKET); const char *mapname_default = XMLCONFIG_DEFAULT; const char *mapname = mapname_default; + const char *tile_dir = tile_dir_default; int minX=-1, maxX=-1, minY=-1, maxY=-1; int x, y, z; char name[PATH_MAX]; struct timeval start, end; int num_render = 0, num_all = 0; - time_t planetTime; int c; int all=0; int numThreads = 1; @@ -307,10 +306,10 @@ int main(int argc, char **argv) free(spath); if (mapname != mapname_default) { - free(mapname); + free((void *)mapname); } if (tile_dir != tile_dir_default) { - free(tile_dir); + free((void *)tile_dir); } diff --git a/src/render_old.c b/src/render_old.c index ddc37570..5e83cbd5 100644 --- a/src/render_old.c +++ b/src/render_old.c @@ -27,7 +27,6 @@ #include "sys_utils.h" const char * tile_dir_default = HASH_PATH; -const char *tile_dir = tile_dir_default; #ifndef METATILE #warning("render_old not implemented for non-metatile mode. Feel free to submit fix") @@ -64,7 +63,7 @@ void display_rate(struct timeval start, struct timeval end, int num) fflush(NULL); } -static time_t getPlanetTime(char *tile_dir) +static time_t getPlanetTime(const char *tile_dir) { static time_t last_check; static time_t planet_timestamp; @@ -103,7 +102,7 @@ static void check_load(void) } } -static void descend(const char *search) +static void descend(const char *tile_dir, const char *search) { DIR *tiles = opendir(search); struct dirent *entry; @@ -128,7 +127,7 @@ static void descend(const char *search) if (stat(path, &b)) continue; if (S_ISDIR(b.st_mode)) { - descend(path); + descend(tile_dir, path); continue; } p = strrchr(path, '.'); @@ -153,7 +152,7 @@ void render_layer(const char *tilepath, const char *name) printf("Rendering zoom %d\n", z); char path[PATH_MAX]; snprintf(path, PATH_MAX, "%s/%s/%d", tilepath, name, z); - descend(path); + descend(tilepath, path); } } @@ -161,6 +160,7 @@ int main(int argc, char **argv) { char spath[PATH_MAX] = RENDER_SOCKET; char *config_file = RENDERD_CONFIG; + const char *tile_dir = tile_dir_default; char *map = NULL; int c; int numThreads = 1; @@ -320,10 +320,10 @@ int main(int argc, char **argv) free(map); if (tile_dir != tile_dir_default) { - free(tile_dir); + free((void *)tile_dir); } - finish_workers(numThreads); + finish_workers(); gettimeofday(&end, NULL); printf("\nTotal for all tiles rendered\n"); diff --git a/src/render_submit_queue.c b/src/render_submit_queue.c index c7259a07..376bf4f4 100644 --- a/src/render_submit_queue.c +++ b/src/render_submit_queue.c @@ -249,7 +249,7 @@ void spawn_workers(int num, const char *spath, int max_load) } } -void print_statistics() { +void print_statistics(void) { int i; printf("*****************************************************\n"); for (i = 0; i <= MAX_ZOOM; i++) { @@ -271,7 +271,7 @@ void wait_for_empty_queue() { pthread_mutex_unlock(&qLock); } -void finish_workers() +void finish_workers(void) { int i; diff --git a/src/store_file.c b/src/store_file.c index 91030425..9c824455 100644 --- a/src/store_file.c +++ b/src/store_file.c @@ -22,6 +22,7 @@ #include "store.h" #include "metatile.h" #include "render_config.h" +#include "store_file.h" #include "store_file_utils.h" #include "protocol.h" diff --git a/src/store_file_utils.c b/src/store_file_utils.c index d42b6105..75704c70 100644 --- a/src/store_file_utils.c +++ b/src/store_file_utils.c @@ -9,6 +9,7 @@ #include "protocol.h" #include "render_config.h" +#include "store_file.h" #include "store_file_utils.h" // Build parent directories for the specified file name