summaryrefslogtreecommitdiff
path: root/core/sharedarea.c
diff options
context:
space:
mode:
authorUnbit <info@unbit.it>2015-05-13 15:42:41 +0200
committerUnbit <info@unbit.it>2015-05-13 15:42:41 +0200
commitbe01eacb6ef8e7c65d4b64379346444428261f00 (patch)
tree9b1b9ef17f20e16952bba866835bfed536e08e8d /core/sharedarea.c
parent9640312e222ee1909d408019ae361904c56f8661 (diff)
downloaduwsgi-be01eacb6ef8e7c65d4b64379346444428261f00.tar.gz
added bigranges sharedarea tests
Diffstat (limited to 'core/sharedarea.c')
-rw-r--r--core/sharedarea.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/core/sharedarea.c b/core/sharedarea.c
index af01307a..1628572f 100644
--- a/core/sharedarea.c
+++ b/core/sharedarea.c
@@ -280,8 +280,8 @@ struct uwsgi_sharedarea *uwsgi_sharedarea_init_fd(int fd, uint64_t len, off_t of
}
uwsgi.sharedareas[id]->id = id;
uwsgi.sharedareas[id]->fd = fd;
- uwsgi.sharedareas[id]->pages = len / uwsgi.page_size;
- if (len % uwsgi.page_size != 0) uwsgi.sharedareas[id]->pages++;
+ uwsgi.sharedareas[id]->pages = len / (size_t) uwsgi.page_size;
+ if (len % (size_t) uwsgi.page_size != 0) uwsgi.sharedareas[id]->pages++;
uwsgi.sharedareas[id]->max_pos = len-1;
char *id_str = uwsgi_num2str(id);
uwsgi.sharedareas[id]->lock = uwsgi_rwlock_init(uwsgi_concat2("sharedarea", id_str));
@@ -292,12 +292,12 @@ struct uwsgi_sharedarea *uwsgi_sharedarea_init_fd(int fd, uint64_t len, off_t of
struct uwsgi_sharedarea *uwsgi_sharedarea_init(int pages) {
int id = uwsgi_sharedarea_new_id();
- uwsgi.sharedareas[id] = uwsgi_calloc_shared(uwsgi.page_size * (size_t)(pages + 1));
- uwsgi.sharedareas[id]->area = ((char *) uwsgi.sharedareas[id]) + uwsgi.page_size;
+ uwsgi.sharedareas[id] = uwsgi_calloc_shared((size_t)uwsgi.page_size * (size_t)(pages + 1));
+ uwsgi.sharedareas[id]->area = ((char *) uwsgi.sharedareas[id]) + (size_t) uwsgi.page_size;
uwsgi.sharedareas[id]->id = id;
uwsgi.sharedareas[id]->fd = -1;
uwsgi.sharedareas[id]->pages = pages;
- uwsgi.sharedareas[id]->max_pos = (uwsgi.page_size * pages) -1;
+ uwsgi.sharedareas[id]->max_pos = ((size_t)uwsgi.page_size * (size_t)pages) -1;
char *id_str = uwsgi_num2str(id);
uwsgi.sharedareas[id]->lock = uwsgi_rwlock_init(uwsgi_concat2("sharedarea", id_str));
free(id_str);
@@ -310,8 +310,8 @@ struct uwsgi_sharedarea *uwsgi_sharedarea_init_ptr(char *area, uint64_t len) {
uwsgi.sharedareas[id]->area = area;
uwsgi.sharedareas[id]->id = id;
uwsgi.sharedareas[id]->fd = -1;
- uwsgi.sharedareas[id]->pages = len / uwsgi.page_size;
- if (len % uwsgi.page_size != 0) uwsgi.sharedareas[id]->pages++;
+ uwsgi.sharedareas[id]->pages = len / (size_t) uwsgi.page_size;
+ if (len % (size_t) uwsgi.page_size != 0) uwsgi.sharedareas[id]->pages++;
uwsgi.sharedareas[id]->max_pos = len-1;
char *id_str = uwsgi_num2str(id);
uwsgi.sharedareas[id]->lock = uwsgi_rwlock_init(uwsgi_concat2("sharedarea", id_str));
@@ -348,8 +348,8 @@ struct uwsgi_sharedarea *uwsgi_sharedarea_init_keyval(char *arg) {
else {
len = uwsgi_n64(s_size);
}
- pages = len / uwsgi.page_size;
- if (len % uwsgi.page_size != 0) pages++;
+ pages = len / (size_t) uwsgi.page_size;
+ if (len % (size_t) uwsgi.page_size != 0) pages++;
}
if (s_offset) {