| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
| |
From now on, constructors should return a value, usually the object
being worked on, or NULL (if the constructor failed). This can also
be used for implementing singletons, by just always returning the same
object from the constructor.
This is one of the final steps towards stabilizing Eo.
@feature
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of "@in type name;" we now use "@in name: type;". This change
is done because of consistency with the rest of Eolian; pretty much
every other part of Eolian syntax uses the latter form.
This is a big breaking change in the .eo format, so please update your
.eo files accordingly and compile Elementary together with the EFL.
@feature
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Fix grammar and spelling mistakes in Eio.h
Reviewers: cedric
Reviewed By: cedric
Differential Revision: https://phab.enlightenment.org/D2472
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
so eio_eet didnt free fiels the same as the rest of eio. it thought it
was special. it thought it could just go free() it's objects (even
though they inherit the core Eio_File object type in their structs).
everyone else ended up calling eio_file_free() EXCEPT eio_eet. so the
eio_(long)_file_set() funcs ewnded up adding this eio file to the
tracking list via eio_file_register() but never unregistered because
they really liked to just do their own thing anyway...
BAD CEDRIC! SPANKING TIME
http://33.media.tumblr.com/3422c76c33c3b9b045f623ff73e0bf8d/tumblr_mhvu61N9br1rbavngo1_500.gi
so this unifies all allocation to now use a single allocator (that
also ensures all eio async io objects are zero'd out), and a SINGLE
free path, and then it all works. no more valgrind complaints on e
shutdown/restart whilst eio "things" were used before or ... maybe
still around.
this should fix T2129
so try again "git master" after this commit.
@fix
|
| |
|
| |
|
|
|
|
| |
Added a spinlock, since contetion should be non-existant. And removed wrong if.
|
|
|
|
|
| |
Removed unnecessary asynchronous stat, which could make eio_monitor to
lose events between the monitor creation and stat completion.
|
|
|
|
| |
Removed sleep and implemented a deterministic way to test if the test has really finished.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This patch check that when a monitor is removed the FSEvent service, it is
not restarted if there is no more paths to monitor. This was generating an
error message from FSEvent.
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
this patch adds an implementation of eio_monitor based on FSEvent
for OSX. This implentation has some limitations compared to inotify
implementation. Folowing events are not detected:
- EIO_MONITOR_FILE_CLOSED
- EIO_MONITOR_SELF_RENAME
- EIO_MONITOR_SELF_DELETED
It should be noted that some events that happend before the call
to eio_monitor_add can be catched. This is why sleep timers have
been added in the test suite.
Tests have been added to check uncovered scenarios.
some things might still be improved:
- self_deleted events for files might be handled by checking the
file_name manually
- self_deleted events for directories might be handled by setting
kFSEventStreamCreateFlagWatchRoot. I've noticed by doing so that
a lot more unwanted event are raised
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
|
|
|
|
|
|
| |
@fix
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
|
|
|
|
|
|
| |
This fix segmentation faults on Windows caused by eio_monitor events.
@fix
|
|
|
|
|
|
| |
@fix
Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
|
|
|
|
|
|
| |
This should avoid potential crash during shutdown while some Eio thread
were still running. We are still not blocking for more than 30s, so if
an IO is blocked on a dead device, you should be fine.
|
|
|
|
|
|
| |
Fixes Coverity issues:
- CID 1039565
- CID 1039566
|
| |
|
|
|
|
|
|
|
|
| |
- eio_file_copy
- eio_file_move
- eio_dir_copy
- eio_dir_move
- eio_dir_unlink
|
|
|
|
| |
@fix T1729
|
|
|
|
|
|
|
|
|
|
|
| |
When using eio_file_stat_ls() (or any other exposing Eio_File *handler),
it will not be possible to use it from the main callback due to eio
freeing data too fast from the thread.
Moved frees from _eio_file_eina_ls_heavy() to eio_async_end() to be
sure that all the calls to main callback are over.
This implied adding the Eina_Iterator from eina_file_stat_ls to
the _Eio_File_Ls structure.
|
| |
|
|
|
|
|
| |
coverity picked this up - CID 1039645. it does indeed look like a real
bug. if order->dirs is empty. for example.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Fix invalid casts.
Use printf("%z") where appropriate.
Fix unused variables warnings.
Thanks vtorri for the patch.
@fix
|
|
|
|
| |
You can't just duplicate a string once and free it three times...
|
| |
|
| |
|
|
|
|
| |
@fix
|
|
|
|
| |
fix CID 1193208.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Eio does need to allocate memory from the thread, transmit it to the
main loop where it is processed and later on freed. If the main loop
is to slow to handle the stream of incoming data, a huge peak of
memory can happen. Some people may want to limit the amount of memory
used at peak time and so this new infrastructure make that possible.
@feature
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fix race condition when touching/changing a (theme) file often.
An Eio_Monitor was marked as "delete_me" but the rename callback
was still called, leading to memory access to already freed
objects.
Test protocol was:
ELM_THEME=~/default.edj elementary_test &
watch touch ~/default.edj
|
|
|
|
|
|
|
|
| |
this MIGHT fix T45 but i can't reproduce to confirm, but reading a
backtrace indicates this could have been the issue. it looks like
there is room for a dangling pointer anyway, so fix.
stable release - cherry-pick me!
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Being annoyed by different types of eina critical macros - CRI, CRIT,
CRITICAL -, I concluded to unify them to one. Discussed on IRC and
finally, CRI was chosen to meet the consistency with other macros -
ERR, WRN, INF, DBG - in terms of the number of characters.
If there is any missing bits, please let me know.
|
| |
|
|
|
|
| |
CID 1039686
|