diff options
author | Roland McGrath <roland@hack.frob.com> | 2015-02-27 15:28:36 -0800 |
---|---|---|
committer | Roland McGrath <roland@hack.frob.com> | 2015-02-27 15:28:36 -0800 |
commit | 8c2754853e4e5400d505924a50461d011cbe4163 (patch) | |
tree | f1da8213d803a6da89a286c7ee65a1b091353bcd | |
parent | f7ec7c1a5ea7d921d94f0ca2552374741a325ce9 (diff) | |
download | glibc-8c2754853e4e5400d505924a50461d011cbe4163.tar.gz glibc-8c2754853e4e5400d505924a50461d011cbe4163.tar.xz glibc-8c2754853e4e5400d505924a50461d011cbe4163.zip |
Actually read in the data when mmap fails.
-rw-r--r-- | sysdeps/nacl/dl-map-segments.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sysdeps/nacl/dl-map-segments.h b/sysdeps/nacl/dl-map-segments.h index 5ad47de472..d93badf1d3 100644 --- a/sysdeps/nacl/dl-map-segments.h +++ b/sysdeps/nacl/dl-map-segments.h @@ -149,6 +149,8 @@ _dl_map_segments (struct link_map *l, int fd, MAP_ANON|MAP_PRIVATE, -1, 0); if (__glibc_unlikely (data == MAP_FAILED)) return DL_MAP_SEGMENTS_ERROR_MAP_ZERO_FILL; + if (read_in_data (fd, data, len, c->mapoff)) + return DL_MAP_SEGMENTS_ERROR_MAP_SEGMENT; int error = __nacl_irt_dyncode.dyncode_create ((void *) (l->l_addr + c->mapstart), data, len); __munmap (data, len); |