mirror of
https://github.com/mapbox/tippecanoe.git
synced 2025-03-23 20:35:16 +00:00
Fix some compiler warnings about signed comparisons
This commit is contained in:
parent
eb1c64db27
commit
92cc08a554
2
Makefile
2
Makefile
@ -9,7 +9,7 @@ CXX := $(CXX)
|
||||
CFLAGS := $(CFLAGS)
|
||||
CXXFLAGS := $(CXXFLAGS) -std=c++11
|
||||
LDFLAGS := $(LDFLAGS)
|
||||
WARNING_FLAGS := -Wall -Wshadow
|
||||
WARNING_FLAGS := -Wall -Wshadow -Wabsolute-value -Wsign-compare
|
||||
RELEASE_FLAGS := -O3 -DNDEBUG
|
||||
DEBUG_FLAGS := -O0 -DDEBUG -fno-inline-functions -fno-omit-frame-pointer
|
||||
|
||||
|
42
main.cpp
42
main.cpp
@ -67,8 +67,8 @@ struct source {
|
||||
std::string file;
|
||||
};
|
||||
|
||||
int CPUS;
|
||||
int TEMP_FILES;
|
||||
size_t CPUS;
|
||||
size_t TEMP_FILES;
|
||||
long long MAX_FILES;
|
||||
static long long diskfree;
|
||||
|
||||
@ -267,7 +267,7 @@ int calc_feature_minzoom(struct index *ix, struct drop_state *ds, int maxzoom, i
|
||||
return feature_minzoom;
|
||||
}
|
||||
|
||||
static void merge(struct mergelist *merges, int nmerges, unsigned char *map, FILE *indexfile, int bytes, long long nrec, char *geom_map, FILE *geom_out, long long *geompos, long long *progress, long long *progress_max, long long *progress_reported, int maxzoom, int basezoom, double droprate, double gamma, struct drop_state *ds) {
|
||||
static void merge(struct mergelist *merges, size_t nmerges, unsigned char *map, FILE *indexfile, int bytes, long long nrec, char *geom_map, FILE *geom_out, long long *geompos, long long *progress, long long *progress_max, long long *progress_reported, int maxzoom, int basezoom, double droprate, double gamma, struct drop_state *ds) {
|
||||
struct mergelist *head = NULL;
|
||||
|
||||
for (size_t i = 0; i < nmerges; i++) {
|
||||
@ -312,7 +312,7 @@ struct sort_arg {
|
||||
long long indexpos;
|
||||
struct mergelist *merges;
|
||||
int indexfd;
|
||||
int nmerges;
|
||||
size_t nmerges;
|
||||
long long unit;
|
||||
int bytes;
|
||||
};
|
||||
@ -367,8 +367,7 @@ void do_read_parallel(char *map, long long len, long long initial_offset, const
|
||||
segs[0] = 0;
|
||||
segs[CPUS] = len;
|
||||
|
||||
int i;
|
||||
for (i = 1; i < CPUS; i++) {
|
||||
for (size_t i = 1; i < CPUS; i++) {
|
||||
segs[i] = len * i / CPUS;
|
||||
|
||||
while (segs[i] < len && map[segs[i]] != '\n') {
|
||||
@ -377,7 +376,7 @@ void do_read_parallel(char *map, long long len, long long initial_offset, const
|
||||
}
|
||||
|
||||
volatile long long layer_seq[CPUS];
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
// To preserve feature ordering, unique id for each segment
|
||||
// begins with that segment's offset into the input
|
||||
layer_seq[i] = segs[i] + initial_offset;
|
||||
@ -387,11 +386,11 @@ void do_read_parallel(char *map, long long len, long long initial_offset, const
|
||||
pthread_t pthreads[CPUS];
|
||||
std::vector<std::set<type_and_string> > file_subkeys;
|
||||
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
file_subkeys.push_back(std::set<type_and_string>());
|
||||
}
|
||||
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
pja[i].jp = json_begin_map(map + segs[i], segs[i + 1] - segs[i]);
|
||||
pja[i].reading = reading;
|
||||
pja[i].layer_seq = &layer_seq[i];
|
||||
@ -427,7 +426,7 @@ void do_read_parallel(char *map, long long len, long long initial_offset, const
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
void *retval;
|
||||
|
||||
if (pthread_join(pthreads[i], &retval) != 0) {
|
||||
@ -706,18 +705,17 @@ void radix1(int *geomfds_in, int *indexfds_in, int inputs, int prefix, int split
|
||||
}
|
||||
unit = ((unit + page - 1) / page) * page;
|
||||
|
||||
int nmerges = (indexpos + unit - 1) / unit;
|
||||
size_t nmerges = (indexpos + unit - 1) / unit;
|
||||
struct mergelist merges[nmerges];
|
||||
|
||||
int a;
|
||||
for (a = 0; a < nmerges; a++) {
|
||||
for (size_t a = 0; a < nmerges; a++) {
|
||||
merges[a].start = merges[a].end = 0;
|
||||
}
|
||||
|
||||
pthread_t pthreads[CPUS];
|
||||
struct sort_arg args[CPUS];
|
||||
|
||||
for (a = 0; a < CPUS; a++) {
|
||||
for (size_t a = 0; a < CPUS; a++) {
|
||||
args[a].task = a;
|
||||
args[a].cpus = CPUS;
|
||||
args[a].indexpos = indexpos;
|
||||
@ -733,7 +731,7 @@ void radix1(int *geomfds_in, int *indexfds_in, int inputs, int prefix, int split
|
||||
}
|
||||
}
|
||||
|
||||
for (a = 0; a < CPUS; a++) {
|
||||
for (size_t a = 0; a < CPUS; a++) {
|
||||
void *retval;
|
||||
|
||||
if (pthread_join(pthreads[a], &retval) != 0) {
|
||||
@ -945,8 +943,7 @@ int read_input(std::vector<source> &sources, char *fname, const char *layername,
|
||||
int ret = EXIT_SUCCESS;
|
||||
|
||||
struct reader reader[CPUS];
|
||||
int i;
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
struct reader *r = reader + i;
|
||||
|
||||
char metaname[strlen(tmpdir) + strlen("/meta.XXXXXXXX") + 1];
|
||||
@ -1045,7 +1042,7 @@ int read_input(std::vector<source> &sources, char *fname, const char *layername,
|
||||
|
||||
int initialized[CPUS];
|
||||
unsigned initial_x[CPUS], initial_y[CPUS];
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
initialized[i] = initial_x[i] = initial_y[i] = 0;
|
||||
}
|
||||
|
||||
@ -1298,7 +1295,7 @@ int read_input(std::vector<source> &sources, char *fname, const char *layername,
|
||||
// (stderr, "Read 10000.00 million features\r", *progress_seq / 1000000.0);
|
||||
}
|
||||
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
if (fclose(reader[i].metafile) != 0) {
|
||||
perror("fclose meta");
|
||||
exit(EXIT_FAILURE);
|
||||
@ -1367,7 +1364,7 @@ int read_input(std::vector<source> &sources, char *fname, const char *layername,
|
||||
long long metapos = 0;
|
||||
long long poolpos = 0;
|
||||
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
if (reader[i].metapos > 0) {
|
||||
void *map = mmap(NULL, reader[i].metapos, PROT_READ, MAP_PRIVATE, reader[i].metafd, 0);
|
||||
if (map == MAP_FAILED) {
|
||||
@ -1718,8 +1715,7 @@ int read_input(std::vector<source> &sources, char *fname, const char *layername,
|
||||
fd[0] = geomfd;
|
||||
size[0] = geomst.st_size;
|
||||
|
||||
int j;
|
||||
for (j = 1; j < TEMP_FILES; j++) {
|
||||
for (size_t j = 1; j < TEMP_FILES; j++) {
|
||||
fd[j] = -1;
|
||||
size[j] = 0;
|
||||
}
|
||||
@ -1760,7 +1756,7 @@ int read_input(std::vector<source> &sources, char *fname, const char *layername,
|
||||
midlon = (maxlon + minlon) / 2;
|
||||
|
||||
long long file_bbox[4] = {UINT_MAX, UINT_MAX, 0, 0};
|
||||
for (i = 0; i < CPUS; i++) {
|
||||
for (size_t i = 0; i < CPUS; i++) {
|
||||
if (reader[i].file_bbox[0] < file_bbox[0]) {
|
||||
file_bbox[0] = reader[i].file_bbox[0];
|
||||
}
|
||||
|
4
main.hpp
4
main.hpp
@ -12,5 +12,5 @@ void checkdisk(struct reader *r, int nreader);
|
||||
extern int geometry_scale;
|
||||
extern int quiet;
|
||||
|
||||
extern int CPUS;
|
||||
extern int TEMP_FILES;
|
||||
extern size_t CPUS;
|
||||
extern size_t TEMP_FILES;
|
||||
|
@ -236,8 +236,7 @@ void mbtiles_write_metadata(sqlite3 *outdb, const char *fname, int minzoom, int
|
||||
lnames.push_back(ai->first);
|
||||
}
|
||||
|
||||
int i;
|
||||
for (i = 0; i < lnames.size(); i++) {
|
||||
for (size_t i = 0; i < lnames.size(); i++) {
|
||||
if (i != 0) {
|
||||
aprintf(&buf, ", ");
|
||||
}
|
||||
|
2
text.cpp
2
text.cpp
@ -7,7 +7,7 @@
|
||||
*/
|
||||
std::string check_utf8(std::string s) {
|
||||
for (size_t i = 0; i < s.size(); i++) {
|
||||
int fail = 0;
|
||||
size_t fail = 0;
|
||||
|
||||
if ((s[i] & 0x80) == 0x80) {
|
||||
if ((s[i] & 0xE0) == 0xC0) {
|
||||
|
27
tile.cpp
27
tile.cpp
@ -826,7 +826,7 @@ void find_common_edges(std::vector<partial> &partials, int z, int line_detail, d
|
||||
for (size_t m = necessary; m < l - 1; m++) {
|
||||
tmp.push_back(g[m]);
|
||||
}
|
||||
for (size_t m = k; m < necessary; m++) {
|
||||
for (ssize_t m = k; m < necessary; m++) {
|
||||
tmp.push_back(g[m]);
|
||||
}
|
||||
|
||||
@ -1667,10 +1667,9 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpo
|
||||
|
||||
FILE *sub[TEMP_FILES];
|
||||
int subfd[TEMP_FILES];
|
||||
int j;
|
||||
for (j = 0; j < TEMP_FILES; j++) {
|
||||
for (size_t j = 0; j < TEMP_FILES; j++) {
|
||||
char geomname[strlen(tmpdir) + strlen("/geom.XXXXXXXX" XSTRINGIFY(INT_MAX)) + 1];
|
||||
sprintf(geomname, "%s/geom%d.XXXXXXXX", tmpdir, j);
|
||||
sprintf(geomname, "%s/geom%zu.XXXXXXXX", tmpdir, j);
|
||||
subfd[j] = mkstemp(geomname);
|
||||
// printf("%s\n", geomname);
|
||||
if (subfd[j] < 0) {
|
||||
@ -1685,17 +1684,17 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpo
|
||||
unlink(geomname);
|
||||
}
|
||||
|
||||
int useful_threads = 0;
|
||||
size_t useful_threads = 0;
|
||||
long long todo = 0;
|
||||
long long along = 0;
|
||||
for (j = 0; j < TEMP_FILES; j++) {
|
||||
for (size_t j = 0; j < TEMP_FILES; j++) {
|
||||
todo += geom_size[j];
|
||||
if (geom_size[j] > 0) {
|
||||
useful_threads++;
|
||||
}
|
||||
}
|
||||
|
||||
int threads = CPUS;
|
||||
size_t threads = CPUS;
|
||||
if (threads > TEMP_FILES / 4) {
|
||||
threads = TEMP_FILES / 4;
|
||||
}
|
||||
@ -1726,7 +1725,7 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpo
|
||||
struct dispatch *next;
|
||||
} dispatches[threads];
|
||||
struct dispatch *dispatch_head = &dispatches[0];
|
||||
for (j = 0; j < threads; j++) {
|
||||
for (size_t j = 0; j < threads; j++) {
|
||||
dispatches[j].tasks = NULL;
|
||||
dispatches[j].todo = 0;
|
||||
if (j + 1 < threads) {
|
||||
@ -1736,7 +1735,7 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpo
|
||||
}
|
||||
}
|
||||
|
||||
for (j = 0; j < TEMP_FILES; j++) {
|
||||
for (size_t j = 0; j < TEMP_FILES; j++) {
|
||||
if (geom_size[j] == 0) {
|
||||
continue;
|
||||
}
|
||||
@ -1764,8 +1763,7 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpo
|
||||
write_tile_args args[threads];
|
||||
int running = threads;
|
||||
|
||||
int thread;
|
||||
for (thread = 0; thread < threads; thread++) {
|
||||
for (size_t thread = 0; thread < threads; thread++) {
|
||||
args[thread].metabase = metabase;
|
||||
args[thread].stringpool = stringpool;
|
||||
args[thread].min_detail = min_detail;
|
||||
@ -1808,7 +1806,7 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpo
|
||||
|
||||
int err = INT_MAX;
|
||||
|
||||
for (thread = 0; thread < threads; thread++) {
|
||||
for (size_t thread = 0; thread < threads; thread++) {
|
||||
void *retval;
|
||||
|
||||
if (pthread_join(pthreads[thread], &retval) != 0) {
|
||||
@ -1820,7 +1818,7 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpo
|
||||
}
|
||||
}
|
||||
|
||||
for (j = 0; j < TEMP_FILES; j++) {
|
||||
for (size_t j = 0; j < TEMP_FILES; j++) {
|
||||
// Can be < 0 if there is only one source file, at z0
|
||||
if (geomfd[j] >= 0) {
|
||||
if (close(geomfd[j]) != 0) {
|
||||
@ -1848,8 +1846,7 @@ int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpo
|
||||
}
|
||||
}
|
||||
|
||||
int j;
|
||||
for (j = 0; j < TEMP_FILES; j++) {
|
||||
for (size_t j = 0; j < TEMP_FILES; j++) {
|
||||
// Can be < 0 if there is only one source file, at z0
|
||||
if (geomfd[j] >= 0) {
|
||||
if (close(geomfd[j]) != 0) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user