Commit Graph

46 Commits

Author SHA1 Message Date
Sebastian Dransfeld b67bef4ed0 eio: correctly define alloca
SVN revision: 79576
2012-11-23 20:11:15 +00:00
Cedric BAIL f82152f150 eio: fix memory leak when using file associate.
SVN revision: 75854
2012-08-30 08:52:15 +00:00
Vincent Torri 68b40793ab Eio: add log debugging macros
SVN revision: 75751
2012-08-28 06:28:56 +00:00
Cedric BAIL 22b8a6103b eio: actually detect when file changed since last monitoring request.
NOTE: Shouldn't I stat and rebuild the notify when the file is deleted
and recreated ? Advise welcome.


SVN revision: 70879
2012-05-09 06:54:09 +00:00
Vincent Torri 71f42dcebc Eio: fix shadow var warnings and make it compile on Windows. Needs more love though
SVN revision: 69809
2012-03-31 06:30:08 +00:00
Vincent Torri e82fb99e0f Eio: autotools cleanup
SVN revision: 69619
2012-03-25 19:15:44 +00:00
Cedric BAIL 4a65416c6a eio: use the newly introduced Eina_Stat.
SVN revision: 68316
2012-02-23 11:46:51 +00:00
Cedric BAIL 422de4f2e5 eio: change callback prototype.
SVN revision: 68265
2012-02-22 11:51:45 +00:00
Cedric BAIL 11f245ab0b eio: add Eet asynchronous helper.
NOTE: this also make Eet an hard dependency for Eio. I do
think that every one will be using Eet anyway, so I didn't
bother making it optional, but if someone complain to me
with enough cookie, I could change my mind.


SVN revision: 68231
2012-02-21 21:01:22 +00:00
Cedric BAIL ef067cebd6 eio: call eina_file_* on Eina_File pointer.
SVN revision: 66622
2011-12-29 10:46:56 +00:00
Cedric BAIL dbccbce821 eio: add API for eina_file_open and like.
tweet: now Eio can help you load your file assynchronously !


SVN revision: 66397
2011-12-20 17:35:41 +00:00
Cedric BAIL 1a016f1915 eio: don't free internal data.
SVN revision: 63479
2011-09-19 12:47:02 +00:00
Cedric BAIL b2dc1ce8ab eio: use eina xattr helper and add more eio xattr function.
SVN revision: 63441
2011-09-16 14:18:08 +00:00
Cedric BAIL b17b7abfe0 eio: use eina_xattr.
SVN revision: 63438
2011-09-16 11:14:57 +00:00
Cedric BAIL 883cea4caa eio: pack data for a few ms.
SVN revision: 63215
2011-09-05 20:29:01 +00:00
Cedric BAIL d6eea5fcc8 eio: improve eio_dir_stat_ls to work with Eio_Associate and make it faster.
SVN revision: 62939
2011-08-29 11:20:27 +00:00
Cedric BAIL 73edb0433f eio: more xattr support.
SVN revision: 60824
2011-06-29 17:28:55 +00:00
Cedric BAIL 28c4f6f8f5 eio: eio doesn't modify data at all, so make it const.
SVN revision: 60635
2011-06-23 13:29:45 +00:00
Cedric BAIL 19d5fb205a eio: associate data to a file behing listed assynchronously.
SVN revision: 60043
2011-06-07 16:30:10 +00:00
Cedric BAIL d41e80a29c eio: add eio_file_container_get.
SVN revision: 59646
2011-05-24 10:41:37 +00:00
Cedric BAIL fb2310d5a4 eio: add beginning of xattr support.
SVN revision: 59146
2011-05-03 10:36:51 +00:00
Cedric BAIL 74fb408eb1 eio: use eina refcount.
SVN revision: 59040
2011-04-29 16:24:14 +00:00
Cedric BAIL 1a699607f6 eio: add inotify backend and fix api.
Note: API/ABI of Eio_Monitor could be considered usable and need feedback.
Still lacking of proper fallback and windows port.


SVN revision: 58953
2011-04-27 10:27:07 +00:00
Cedric BAIL b558cbc07e eio: add Eio_Monitor API.
Not yet working. Need to handle message, add fallback and windows support.


SVN revision: 58907
2011-04-25 17:04:46 +00:00
Cedric BAIL 8fe5c5ce54 eio: make it easy to filter content during eio_dir_* operation.
SVN revision: 57631
2011-03-09 16:21:11 +00:00
Cedric BAIL fb188326a9 eio: correctly fix large file support.
SVN revision: 57629
2011-03-09 15:04:01 +00:00
Cedric BAIL fc2aaf9935 eio: fix issue on 32bits system.
SVN revision: 57626
2011-03-09 14:53:55 +00:00
Cedric BAIL e61f8560ea * ecore: break Ecore_Thread API once and for all to make it consistent.
SVN revision: 54502
2010-11-12 13:28:19 +00:00
Cedric BAIL 7e9c729ce2 * eio: fix recursion by detecting link and recreating them.
SVN revision: 54123
2010-11-03 12:35:21 +00:00
Vincent Torri c2d941930c [eio] check if threads, grp.h and fchmod() are available
SVN revision: 53723
2010-10-21 17:51:21 +00:00
Vincent Torri ab84f4da58 [eio] _GNU_SOURCE already defined in config.h
SVN revision: 53721
2010-10-21 17:18:35 +00:00
Cedric BAIL 06ea9c415d * eio: add eio_file_chmod and eio_file_chown.
SVN revision: 53678
2010-10-20 16:42:45 +00:00
Cedric BAIL f3b720812e * e, eio: fix ecore_thread_run breakage.
SVN revision: 53371
2010-10-13 17:46:02 +00:00
Carsten Haitzler 8cde3d4ba6 ok... bad eio hackers. you know setting things like gnu_source and
file_offset_bits .. CHANGES the size of structs like dirent? so if u
do it differently in different c files... u end up with.. GASP
different structs with different sizes! dont do this. unify everything
into eio_private.h so its at least CONSISTENT for eio's internals.



SVN revision: 53322
2010-10-13 00:26:12 +00:00
Cedric BAIL cb8d2cf2f9 * eio: improve allocation code for eio_file_direct_ls.
SVN revision: 53262
2010-10-11 12:40:20 +00:00
Cedric BAIL a1ea2ed6cd * eio: more code to share.
SVN revision: 53065
2010-10-05 15:32:24 +00:00
Cedric BAIL 9e019c7227 * eio: report current operation during progress.
SVN revision: 53063
2010-10-05 14:55:47 +00:00
Cedric BAIL 5999ca1825 * eio: share more code and make copy cancellable.
SVN revision: 53057
2010-10-05 12:56:07 +00:00
Cedric BAIL bb76ca8100 * eio: share some code.
SVN revision: 53056
2010-10-05 11:44:03 +00:00
Cedric BAIL 7088845157 * eio: add eio_file_move (completly asynchronous and non
blocking move). It first try a rename, then fallback to
	an eio_file_copy + eio_file_unlink.

Small example on how to use it :
#include <Ecore.h>
#include <Eio.h>

static void
_test_done_cb(void *data)
{
   printf("move done\n");
   ecore_main_loop_quit();
}

static void
_test_error_cb(int error, void *data)
{
   fprintf(stderr, "error: [%s]\n", strerror(error));
   ecore_main_loop_quit();
}

int
main(int argc, char **argv)
{
   Eio_File *cp;

   if (argc != 3)
     {
        fprintf(stderr, "eio_cp source_file destination_file\n");
        return -1;
     }

   ecore_init();
   eio_init();

   cp = eio_file_move(argv[1], argv[2],
                      NULL,
                      _test_done_cb,
                      _test_error_cb,
                      NULL);

   ecore_main_loop_begin();

   eio_shutdown();
   ecore_shutdown();

   return 0;
}


SVN revision: 52845
2010-09-28 09:05:51 +00:00
Cedric BAIL 135a0f570a * eio: add eio_file_copy (using splice when available and
fallback to mmap/write with huge tlb when not).

That what an eio_cp would look like :

#include <Ecore.h>
#include <Eio.h>

static void
_test_progress_cb(void *data, const Eio_Progress *info)
{
   printf("%f (%zi / %zi octets)\n", info->percent, info->current, info->max);
}

static void
_test_done_cb(void *data)
{
   printf("copy done\n");
   ecore_main_loop_quit();
}

static void
_test_error_cb(int error, void *data)
{
   fprintf(stderr, "error: [%s]\n", strerror(error));
   ecore_main_loop_quit();
}

int
main(int argc, char **argv)
{
   Eio_File *cp;

   if (argc != 3)
     {
        fprintf(stderr, "eio_cp source_file destination_file\n");
        return -1;
     }

   ecore_init();
   eio_init();

   cp = eio_file_copy(argv[1], argv[2],
                      _test_progress_cb,
                      _test_done_cb,
                      _test_error_cb,
                      NULL);

   ecore_main_loop_begin();

   eio_shutdown();
   ecore_shutdown();

   return 0;
}




SVN revision: 52787
2010-09-26 21:47:48 +00:00
Cedric BAIL 0a4134fd5f * eio: return errno on error.
SVN revision: 51946
2010-09-07 14:43:51 +00:00
Cedric BAIL cbff3eb25a * eio: major cleanup.
SVN revision: 51927
2010-09-06 16:37:43 +00:00
Cedric BAIL ea791dccc5 * eio: minor cleanup and add stat support.
SVN revision: 51925
2010-09-06 15:27:10 +00:00
Cedric BAIL 810afbdf9e * eio: add eio_file_unlink.
SVN revision: 51840
2010-09-02 13:39:59 +00:00
Cedric BAIL eeafcb3be5 * eio: oops, forgot to add those files.
SVN revision: 51800
2010-09-01 08:23:15 +00:00