diff options
Diffstat (limited to '')
-rw-r--r-- | libraries/ecore/src/lib/ecore_file/Makefile.in | 20 | ||||
-rw-r--r-- | libraries/ecore/src/lib/ecore_file/ecore_file.c | 2 | ||||
-rw-r--r-- | libraries/ecore/src/lib/ecore_file/ecore_file_download.c | 40 |
3 files changed, 37 insertions, 25 deletions
diff --git a/libraries/ecore/src/lib/ecore_file/Makefile.in b/libraries/ecore/src/lib/ecore_file/Makefile.in index 04e0bf1..a80ece3 100644 --- a/libraries/ecore/src/lib/ecore_file/Makefile.in +++ b/libraries/ecore/src/lib/ecore_file/Makefile.in | |||
@@ -50,16 +50,15 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ac_attribute.m4 \ | |||
50 | $(top_srcdir)/m4/efl_path_max.m4 $(top_srcdir)/m4/efl_tests.m4 \ | 50 | $(top_srcdir)/m4/efl_path_max.m4 $(top_srcdir)/m4/efl_tests.m4 \ |
51 | $(top_srcdir)/m4/efl_threads.m4 $(top_srcdir)/m4/gettext.m4 \ | 51 | $(top_srcdir)/m4/efl_threads.m4 $(top_srcdir)/m4/gettext.m4 \ |
52 | $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \ | 52 | $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \ |
53 | $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/lib-ld.m4 \ | 53 | $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ |
54 | $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ | 54 | $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \ |
55 | $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ | 55 | $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ |
56 | $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ | 56 | $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ |
57 | $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ | 57 | $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ |
58 | $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ | 58 | $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac |
59 | $(top_srcdir)/configure.ac | ||
60 | am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ | 59 | am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ |
61 | $(ACLOCAL_M4) | 60 | $(ACLOCAL_M4) |
62 | mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs | 61 | mkinstalldirs = $(install_sh) -d |
63 | CONFIG_HEADER = $(top_builddir)/config.h | 62 | CONFIG_HEADER = $(top_builddir)/config.h |
64 | CONFIG_CLEAN_FILES = | 63 | CONFIG_CLEAN_FILES = |
65 | CONFIG_CLEAN_VPATH_FILES = | 64 | CONFIG_CLEAN_VPATH_FILES = |
@@ -195,6 +194,8 @@ EVAS_LIBS = @EVAS_LIBS@ | |||
195 | EVIL_CFLAGS = @EVIL_CFLAGS@ | 194 | EVIL_CFLAGS = @EVIL_CFLAGS@ |
196 | EVIL_LIBS = @EVIL_LIBS@ | 195 | EVIL_LIBS = @EVIL_LIBS@ |
197 | EXEEXT = @EXEEXT@ | 196 | EXEEXT = @EXEEXT@ |
197 | EXOTIC_CFLAGS = @EXOTIC_CFLAGS@ | ||
198 | EXOTIC_LIBS = @EXOTIC_LIBS@ | ||
198 | FGREP = @FGREP@ | 199 | FGREP = @FGREP@ |
199 | GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ | 200 | GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ |
200 | GLIB_CFLAGS = @GLIB_CFLAGS@ | 201 | GLIB_CFLAGS = @GLIB_CFLAGS@ |
@@ -250,6 +251,8 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
250 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 251 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
251 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 252 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
252 | PKG_CONFIG = @PKG_CONFIG@ | 253 | PKG_CONFIG = @PKG_CONFIG@ |
254 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
255 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
253 | POSUB = @POSUB@ | 256 | POSUB = @POSUB@ |
254 | RANLIB = @RANLIB@ | 257 | RANLIB = @RANLIB@ |
255 | SCIM_CFLAGS = @SCIM_CFLAGS@ | 258 | SCIM_CFLAGS = @SCIM_CFLAGS@ |
@@ -260,6 +263,7 @@ SDL_LIBS = @SDL_LIBS@ | |||
260 | SED = @SED@ | 263 | SED = @SED@ |
261 | SET_MAKE = @SET_MAKE@ | 264 | SET_MAKE = @SET_MAKE@ |
262 | SHELL = @SHELL@ | 265 | SHELL = @SHELL@ |
266 | SHM_OPEN_LIBS = @SHM_OPEN_LIBS@ | ||
263 | SSL_CFLAGS = @SSL_CFLAGS@ | 267 | SSL_CFLAGS = @SSL_CFLAGS@ |
264 | SSL_LIBS = @SSL_LIBS@ | 268 | SSL_LIBS = @SSL_LIBS@ |
265 | STRIP = @STRIP@ | 269 | STRIP = @STRIP@ |
diff --git a/libraries/ecore/src/lib/ecore_file/ecore_file.c b/libraries/ecore/src/lib/ecore_file/ecore_file.c index cfbf2b5..cb03717 100644 --- a/libraries/ecore/src/lib/ecore_file/ecore_file.c +++ b/libraries/ecore/src/lib/ecore_file/ecore_file.c | |||
@@ -821,6 +821,8 @@ ecore_file_ls(const char *dir) | |||
821 | Eina_List *list = NULL; | 821 | Eina_List *list = NULL; |
822 | 822 | ||
823 | ls = eina_file_direct_ls(dir); | 823 | ls = eina_file_direct_ls(dir); |
824 | if (!ls) return NULL; | ||
825 | |||
824 | EINA_ITERATOR_FOREACH(ls, info) | 826 | EINA_ITERATOR_FOREACH(ls, info) |
825 | { | 827 | { |
826 | char *f; | 828 | char *f; |
diff --git a/libraries/ecore/src/lib/ecore_file/ecore_file_download.c b/libraries/ecore/src/lib/ecore_file/ecore_file_download.c index c5e56bd..971493e 100644 --- a/libraries/ecore/src/lib/ecore_file/ecore_file_download.c +++ b/libraries/ecore/src/lib/ecore_file/ecore_file_download.c | |||
@@ -45,22 +45,27 @@ static Ecore_Event_Handler *_url_complete_handler = NULL; | |||
45 | static Ecore_Event_Handler *_url_progress_download = NULL; | 45 | static Ecore_Event_Handler *_url_progress_download = NULL; |
46 | static Eina_List *_job_list; | 46 | static Eina_List *_job_list; |
47 | 47 | ||
48 | static int download_init = 0; | ||
49 | |||
48 | #endif /* BUILD_ECORE_CON */ | 50 | #endif /* BUILD_ECORE_CON */ |
49 | 51 | ||
50 | int | 52 | int |
51 | ecore_file_download_init(void) | 53 | ecore_file_download_init(void) |
52 | { | 54 | { |
53 | #ifdef BUILD_ECORE_CON | 55 | #ifdef BUILD_ECORE_CON |
54 | if (!ecore_con_url_init()) | 56 | download_init++; |
55 | return 0; | 57 | if (download_init > 1) return 1; |
56 | 58 | if (!ecore_con_init()) return 0; | |
59 | if (!ecore_con_url_init()) | ||
60 | { | ||
61 | ecore_con_shutdown(); | ||
62 | return 0; | ||
63 | } | ||
57 | # ifdef HAVE_CURL | 64 | # ifdef HAVE_CURL |
58 | _url_complete_handler = ecore_event_handler_add(ECORE_CON_EVENT_URL_COMPLETE, _ecore_file_download_url_complete_cb, NULL); | 65 | _url_complete_handler = ecore_event_handler_add(ECORE_CON_EVENT_URL_COMPLETE, _ecore_file_download_url_complete_cb, NULL); |
59 | _url_progress_download = ecore_event_handler_add(ECORE_CON_EVENT_URL_PROGRESS, _ecore_file_download_url_progress_cb, NULL); | 66 | _url_progress_download = ecore_event_handler_add(ECORE_CON_EVENT_URL_PROGRESS, _ecore_file_download_url_progress_cb, NULL); |
60 | # endif | 67 | # endif |
61 | |||
62 | #endif /* BUILD_ECORE_CON */ | 68 | #endif /* BUILD_ECORE_CON */ |
63 | |||
64 | return 1; | 69 | return 1; |
65 | } | 70 | } |
66 | 71 | ||
@@ -68,15 +73,17 @@ void | |||
68 | ecore_file_download_shutdown(void) | 73 | ecore_file_download_shutdown(void) |
69 | { | 74 | { |
70 | #ifdef BUILD_ECORE_CON | 75 | #ifdef BUILD_ECORE_CON |
71 | if (_url_complete_handler) | 76 | download_init--; |
72 | ecore_event_handler_del(_url_complete_handler); | 77 | if (download_init > 0) return; |
73 | if (_url_progress_download) | 78 | if (_url_complete_handler) |
74 | ecore_event_handler_del(_url_progress_download); | 79 | ecore_event_handler_del(_url_complete_handler); |
75 | _url_complete_handler = NULL; | 80 | if (_url_progress_download) |
76 | _url_progress_download = NULL; | 81 | ecore_event_handler_del(_url_progress_download); |
77 | ecore_file_download_abort_all(); | 82 | _url_complete_handler = NULL; |
78 | 83 | _url_progress_download = NULL; | |
79 | ecore_con_url_shutdown(); | 84 | ecore_file_download_abort_all(); |
85 | ecore_con_url_shutdown(); | ||
86 | ecore_con_shutdown(); | ||
80 | #endif /* BUILD_ECORE_CON */ | 87 | #endif /* BUILD_ECORE_CON */ |
81 | } | 88 | } |
82 | 89 | ||
@@ -362,7 +369,6 @@ _ecore_file_download_curl(const char *url, const char *dst, | |||
362 | } | 369 | } |
363 | 370 | ||
364 | if (headers) eina_hash_foreach(headers, _ecore_file_download_headers_foreach_cb, job); | 371 | if (headers) eina_hash_foreach(headers, _ecore_file_download_headers_foreach_cb, job); |
365 | ecore_con_url_timeout_set(job->url_con, ECORE_FILE_DOWNLOAD_TIMEOUT); | ||
366 | ecore_con_url_fd_set(job->url_con, fileno(job->file)); | 372 | ecore_con_url_fd_set(job->url_con, fileno(job->file)); |
367 | ecore_con_url_data_set(job->url_con, data); | 373 | ecore_con_url_data_set(job->url_con, data); |
368 | 374 | ||