path: root/src/lib/efreet (unfollow)
AgeCommit message (Collapse)Author
2021-02-06Efreet: fix file:// scheme on WindowsVincent Torri
Summary: On Windows, file:///c:/path/to/file is correct and not managed. Use a Win API for manage it correctly Test Plan: test case Reviewers: raster, cedric Reviewed By: raster Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2021-02-06Efreet: do not translate standard directories on WindowsVincent Torri
Summary: The directories on hard disk are not translated on Windows Test Plan: test case Reviewers: raster, cedric Reviewed By: raster Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2020-09-29efreet - windows - still call stat but skip lstat/readlinkCarsten Haitzler (Rasterman)
now stat is filled with data on windows @fix
2020-06-25Fix typos - (Part #5)Elyes HAOUAS
Fix some typos Reviewed-by: Stefan Schmidt <> Differential Revision:
2020-06-23Get rid of trailing whitespaces (14 / 14)Elyes HAOUAS
Remove trailing whitespaces Differential Revision:
2020-06-18efreet - mtime 0 fix build on windowsCarsten Haitzler (Rasterman)
2020-06-18efreetd - cache - add more statinfo work around 0 mtime distrosCarsten Haitzler (Rasterman)
some distros 9notably in this case nixos) want to do reproducible builds. to them this means going around setting mtime for all files to 0. this means efreetd not only thinks mtime is invalid/stupid (0 is generally just that as midnight on jan 1 1970 is not exactly a sensible dare for a modified timestamp of a file as no filesystem with any sanity will have not been modified since that time), but it keeps mtime at 0 even when things update. this totally breaks efreetd that expects to find mtime increases over time as things change. it's necessary because it has to perform a "are mu caches up to date" scan of all file data it caches and it needs to know if it should rebuild something based on this. so this does a few things: 1. it makes mtime have to be an exact match to the cache, not cache mtime >= file mtime. so any change forward or back is an inavlidation. 2. it now also uses ctime, mode, size, uid, gid, block count and if a symlink, the sha1 of the symlink path in addition and any change to these == invalid. this adds a lot of code and changes how dirs get scanned a bit but it means it can pick up changes on these 0 mtime distros. interestingly the policy of mtime being 0 is to have a reprodcible fs ... but ctime still changes and is > 0, as does inode info, so it's not actually possible to have it totally work... but they try still, so this is a fix for that problem. whilst i was doing thisi also noticed efreetd re-red dirs many times due to icon theme inhritance. i also fixed that to do a LOT less syscalls by only scanning a dir once as i was rejigging the scanning code at the time anyway. this should optimize thr scan costs at efreetd startup too. @fix @opt
2020-06-09efreet - handle runtime relocation right with default XDG_DATA_DIRSCarsten Haitzler (Rasterman)
XDG_DATA_DIRS was only set up to a default including where efl was installed prefix-wise as the compiled-=in prefix, not runtime determined prefix. it shouldn't actually affect most people except those making use of this. @fix
2020-05-27refactor buildMarcel Hollerbach
libraries are split into deps, external deps, and pub deps. Evas engines are refactored to use the predefined engine deps. this is preparation work for efl-one. Reviewed-by: Stefan Schmidt <> Differential Revision:
2020-05-26Merge efreet_mime efreet_trash into efreetMarcel Hollerbach
efreet_mime and efreet_trash are now included in There are compatible libs for, which simple drag in .pc files also are in place for compatibility. efreet_init & shutdown now initializes and shutdowns trash and mime. The old init functions now simply call efreet_init, efreet_init will then init the trash or mime libs. Reviewed-by: Stefan Schmidt <> Differential Revision:
2020-05-18Revert "Fix EAPI definition by defining EFL_BUILD for each built DLL"Carsten Haitzler (Rasterman)
This reverts commit 3ade45cbc82bea1772c7ad1afb7e1ba5dd67d930.
2020-05-18Fix EAPI definition by defining EFL_BUILD for each built DLLVincent Torri
Summary: EAPI must be defined to dllexport when building DLL, and to dllimport when using these DLL. To achieve this, define EFL_BUILD for each library and module, and set DLL_EXPORT unconditionally. Static library are and will be not supported Test Plan: compilation Reviewers: zmike, raster, jptiz Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2020-05-07Use __func__ C99 identifier instead of __FUNCTION__ compiler extensionVincent Torri
Summary: see section page 52 Test Plan: compilation Reviewers: raster, devilhorns Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2020-04-25efreet - work around conconforming apps putting startupwmclass in quotesCarsten Haitzler (Rasterman)
riot does StartupWMClass="Riot" does not allow for quoting here. you can quote fields in an exec line - for shell and replacement purposes, but not other fields like this above. this is a workaround a broken app so matching window to desktop file works. @fix
2020-04-16efreet - also look in lib in /usr/local/share/pixmaps tooCarsten Haitzler (Rasterman)
2020-04-14build: fix libraries of efreet-mime -trashMarcel Hollerbach
Summary: the dependencies were simply wrong. Depends on D11684 Reviewers: zmike, stefan_schmidt, raster Reviewed By: zmike Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2020-04-10efreetd - ensure on bsd where connects succed despite daemon being goneCarsten Haitzler (Rasterman)
just get it to work... getting unamused with this.
2020-04-09efreet - try less chaotic efreetd restart and delay 0.5-1.0 rand secCarsten Haitzler (Rasterman)
try work on T8490
2020-02-28doxygen: fix duplicated toc sectionsXavi Artigas
2020-01-15eina - fix eina_strndup test passingCarsten Haitzler (Rasterman)
2019-11-16efreet - consider ctime changes as changes tooCarsten Haitzler (Rasterman)
some distros do odd things with source desktop files and set their mtime timestamps to 0... thus we can't tell that there is a change. thier ctimes do change, so consider the newer of either of these as the modification time to not miss updates @fix
2019-11-15efreet: fix typoBoris Faure
Summary: efreet: fix typo Test Plan: None Reviewers: cedric, raster, lauromoura, devilhorns, marcelhollerbach, segfaultxavi, zmike, vtorri Reviewed By: segfaultxavi, vtorri Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-10-28efreet : Check that the file has a protocol in ↵thierry1970
efreet_desktop_command_file_process() if a path has a '/' character in it before the ':' character then it should be treated as a local file which contains a ':' character in its name Reviewers: devilhorns, zmike Reviewed By: zmike Subscribers: zmike, cedric, #reviewers, #committers Tags: #efl Differential Revision:
2019-09-04Efreet_Uri: fix URI decoding when a Windows path (letter followed by :) is ↵Vincent Torri
passed to efreet_uri_decode() Summary: uri decoding returned a wrong URI when a Windows path is given Test Plan: rage, which is using efreet_uri is now playing files on Windows Reviewers: raster, cedric, zmike, stefan_schmidt Reviewed By: raster Subscribers: stefan_schmidt, #reviewers, #committers Tags: #efl Differential Revision:
2019-08-25efreet - make efreet launch timeout configurable by env varCarsten Haitzler (Rasterman)
also report as an ERR explicitly if its a timeout.
2019-08-19make mman.h privateVincent Torri
Summary: integrate mman.h to make Evil private to the EFL, as mman.h does not exist on Windows. After a discussion with raster, i include sys/mman.h only on non Windows platform. One issue, though, is that src/modules/emotion/generic/Emotion_Generic_Plugin.h has inlined functions using mmap() Test Plan: compilation on Windows Reviewers: cedric, raster, zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-08-09efreet - be more patient for efreet to start - up to 2 sec nowCarsten Haitzler (Rasterman)
seems people have issues with efreetd starting in 0.5 sec on some systems... even rpi's manage that, but lets be more patient and wait up to 2 sec
2019-07-28Evil: remove pwd code in Evil and fix compilation failures after the removalVincent Torri
Summary: remove pwd code in Evil Test Plan: compilation Reviewers: zmike, cedric, raster Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-05-20remove Evil.h when not necessary, include evil_private.h when necessaryVincent Torri
Test Plan: compilation Reviewers: zmike, raster, cedric Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-05-08Evil: remove wrapper around getcwd()Vincent Torri
Summary: getcwd() is declared in direct.h Test Plan: compilation Reviewers: raster, cedric, zmike Reviewed By: zmike Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-03-15efreet: Fix resource leakChristopher Michael
Summary: Coverity reports that we leak 'exec' here when we return. Add IF_FREE(exec) to remove the leak. Fixes Coverity CID1399090 @fix Depends on D8353 Reviewers: raster, cedric, zmike, bu5hm4n, stefan_schmidt Reviewed By: cedric Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-02-01replace hton and ntoh family functions with ones defined in einaVincent Torri
Summary: This fixes especially the execution of edje_cc on Windows Test Plan: execution of edje_cc Reviewers: cedric, raster Subscribers: #reviewers, #committers Tags: #efl Differential Revision:
2019-01-03efreet: Add installation prefix search for XDG_DATA_DIRS.Alastair Poole
Summary: Currently path parsed for XDG_DATA_DIRS is hard-coded to /etc. By using eina_prefix_get and adding to the list of directories efreet should use efreet will use path relative to the EFL installation. Reviewers: #committers, bu5hm4n, cedric, raster, zmike Reviewed By: #committers, zmike Subscribers: zmike, #reviewers Tags: #efl Differential Revision:
2018-12-27meson - fix pc file versions that were missing mirco versionCarsten Haitzler (Rasterman)
2018-11-09efreet menu - fix truncation in snprintf to have bigger buffersCarsten Haitzler (Rasterman)
2018-11-09efreet icon - move func into ifdef as only used if ifdef is trueCarsten Haitzler (Rasterman)
2018-11-09efreet trash - warn - expand buffer to avoid truncation by snprintfCarsten Haitzler (Rasterman)
2018-11-09efreet menu - only build internal cmp func if used in ifdefsCarsten Haitzler (Rasterman)
2018-11-09efreet icon - fix constness of char ptrCarsten Haitzler (Rasterman)
2018-10-02here comes mesonMarcel Hollerbach
a new shiny buildtool that currently completes in the total of ~ 4 min.. 1 min. conf time 2:30 min. build time Where autotools takes: 1:50 min. conf time 3:40 min. build time. meson was taken because it went quite good for enlightenment, and is a traction gaining system that is also used by other mayor projects. Additionally, the DSL that is defined my meson makes the configuration of the builds a lot easier to read. Further informations can be gathered from the README.meson Right now, bindings & windows support are missing. It is highly recommented to use meson 0.48 due to optimizations in meson that reduced the time the meson call would need. Co-authored-by: Mike Blumenkrantz <> Differential Revision: Depends on D7011
2018-09-27efreet_menu: remove unused and unreachable code.Alastair Poole
Coverity doesn't like this unreachable code. This purges efreet_menu of all unused code for the deprecated and non-working menu_async methods. The warnings remain at compile time and run time. Differential Revision:
2018-08-20move efreet xdg envvars to einaMarcel Hollerbach
Summary: The contents of the XDG_ env vars are also usefull for eina subsystems, thus we should init those env vars here. Depends on D6751 Reviewers: zmike, stefan_schmidt, #committers Reviewed By: zmike, #committers Subscribers: #reviewers, cedric, #committers, zmike Tags: #efl Differential Revision:
2018-07-10efreet: include buildsystem.h in efreet_cache.cMike Blumenkrantz
Summary: lib/efreet/efreet_cache.c:121:6: warning: implicit declaration of function 'bs_binary_get' is invalid in C99 [-Wimplicit-function-declaration] Reviewers: devilhorns Reviewed By: devilhorns Subscribers: cedric, #committers Tags: #efl Differential Revision:
2018-07-06efreet: simplify and fix efreetd launchMike Blumenkrantz
this previously used an entire eina prefix to determine where to find efreetd, when a simpler approach would have been to just pass the directory where it's being installed this also inhibited running the correct efreetd during in-tree builds and tests, as it was using the install prefix instead of the in-tree wrapper script @fix fix T6713 Differential Revision:
2018-07-03efreet: use correct path when generating error message about stale efreetd ↵Mike Blumenkrantz
socket Summary: using runtime directory in all cases for this is wrong, as ecore-con has a number of fallback codepaths for the case where runtime directory is not set or not valid. by using the same ecore-con function which ecore-ipc uses to generate the socket string, the error message path should always be the same as the path which is used by efreetd extra linkage was required by efreet in order to use ecore-con functions, so the internal lib variable in the build system was modified to provide this @fix fix T7045 Reviewers: devilhorns Reviewed By: devilhorns Subscribers: cedric, #committers Tags: #efl Maniphest Tasks: T7045 Differential Revision:
2018-06-22efreet: silent deprecated API build warnings.Alastair Poole
Silent warnings on EFL build. Warn on API "mis-use".
2018-06-15efreet: make efreet_menu_async_get() deprecated.Alastair Poole
Marking deprecated. Func will warn and instantly return on call.
2018-06-14efreet: mark efreet_menu_async_parse() deprecated.Alastair Poole
Marking deprecated, with warnning and instant return. Disabling test code also (for now). Awaiting a fresh implementation. @fix T585
2018-04-27efreet: add method for disabling efreetd connectionMike Blumenkrantz
Summary: some minimal applications, such as test suites, may want to disable this if they are not in need of any of the functionality that is provided @feature Depends on D5965 Reviewers: cedric, stefan_schmidt Reviewed By: cedric Subscribers: stefan_schmidt, cedric Differential Revision:
2018-03-03efreet_xml: make sure we unmap the right pointer.Al Poole
Seems Linux would munmap a lump of coal without failing. Make sure the pointers match. Again bogus unmap not detected by valgrind and not failing. @fix T5949