- if (req != NULL && ret != req)
- fprintf(stderr,
- "warning: mmaped to %p, requested %p\n", ret, req);
+ if (req != NULL && ret != req) {
+ fprintf(stderr, "%s: mmaped to %p, requested %p\n",
+ is_fixed ? "error" : "warning", ret, req);
+ if (is_fixed) {
+ munmap(ret, size);
+ return NULL;
+ }
+ }