efl/src/lib
Jean-Philippe Andre cb3b4cc8d7 elm image: Fix async open to avoid multiple mmap
Reported by @jiin.moon:

In case of async_open for an elm_image, we try and open a file in a
thread, then map it and populate a bit, as this may take some time
(blocking I/O). This creates a mmap with eina_file_map_new. But later
evas image loaders will (usually) try and map the entire file with
eina_file_map_all() which creates another mmap. Since the size is
different (32Kb first then all) the returned map might be different
(it's up to the kernel to decide at this point).

So, in order to avoid having multiple maps on the same file, and try to
reduce the peak memory usage, we should prefer using the same map all
the time, i.e. the global one returned by eina_file_map_all().

This patch relies on the previous patch in eina_file which fixes
eina_file_map_populate() for the global map.

@fix
2017-09-18 11:58:53 +09:00
..
ecore ecore: convert existing eo files to new ownership 2017-09-15 16:51:37 +02:00
ecore_audio ecore_audio_pulse_ml: Check memory allocation fail 2017-08-08 23:13:47 +09:00
ecore_avahi
ecore_buffer
ecore_cocoa OSX: fix version detection in build 2017-07-17 13:04:30 +01:00
ecore_con efl net http - fix protocol error handling to not crash and handle it 2017-09-17 18:18:12 +09:00
ecore_drm
ecore_drm2 ecore_drm2: Better handling of blank time checks 2017-09-05 12:12:30 -05:00
ecore_evas efl: remove PS3 backend. 2017-08-25 10:48:42 -07:00
ecore_fb ecore_fb_li: add error handling code related with calloc 2017-08-09 11:10:20 +09:00
ecore_file
ecore_imf ecore_imf: Add ecore_imf_context_input_panel_position_set API 2017-09-14 10:49:03 +09:00
ecore_imf_evas
ecore_input ecore joystick: Use const char * in API, not slstr 2017-07-17 13:53:42 +09:00
ecore_input_evas
ecore_ipc Ecore_Conn: Enable CLOEXEC by default. 2017-07-27 16:54:34 +02:00
ecore_sdl ecore_sdl: Add API doc for ecore_sdl_feed_events 2017-08-18 09:48:59 -04:00
ecore_wayland
ecore_win32 Add ecore_win32_cursor_show() API and ecore_evas_win32_cursor_(un)set() functions 2017-07-09 13:34:09 +02:00
ecore_wl2 ecore_wl2: Don't set up callbacks on initial commit 2017-09-01 12:29:05 -05:00
ecore_x ecore_x: Avoid crash on NULL 2017-08-02 13:34:45 +09:00
ector ector: move gradient color computation to a pool of thread. 2017-09-17 11:49:48 -07:00
edje efl interfaces: convert to new ownership 2017-09-15 16:57:44 +02:00
eet
eeze eeze_disk - remove redundant if check already done 2017-07-29 10:56:53 +09:00
efl eolian: correctness fixes in tests and eo files 2017-09-15 17:48:28 +02:00
efl_wl efl-wl: match nested wl seats based on display ordering 2017-08-25 14:48:11 -04:00
efreet efreet - dont complain if INTERNAL x extension hash of desktop is NULL 2017-07-21 17:02:43 +09:00
eina eina file: Ensure populate is safe to call 2017-09-18 11:58:53 +09:00
eio eo files: first batch of @owned conversions 2017-09-15 16:44:26 +02:00
eldbus eldbus - make file local func added in fix static 2017-08-01 11:23:20 +09:00
elementary elm image: Fix async open to avoid multiple mmap 2017-09-18 11:58:53 +09:00
elocation elocation - fix return of status, address, position to actually ret data 2017-07-31 12:18:00 +09:00
elput elput: Add API to set pointer acceleration speed 2017-08-24 11:28:31 -04:00
elua elua: load regular file if bytecode cache fails 2017-08-30 20:21:23 +02:00
embryo
emile
emotion emotion: Make it a clipped smart object 2017-09-13 09:57:05 +09:00
eo eo: fix doxygen typo 2017-09-16 14:28:39 +02:00
eolian eolian: remove old ownership system 2017-09-15 17:52:55 +02:00
eolian_cxx eolian cxx: use new ownership check API 2017-09-15 16:35:24 +02:00
ephysics ephysics - fix stacking comparsion correctly if 1 smaller than 1 2017-07-29 09:08:40 +09:00
escape
ethumb
ethumb_client
evas eo files: first batch of @owned conversions 2017-09-15 16:44:26 +02:00
evil
.gitignore
CMakeLists.txt