sorry, random crash on e start, no background, no wallpaper preview in settings, terminology crash (does not find its theme files)
I rm -fr and rebuild everything to be sure before starting to search for an answer On Wednesday 20 November 2013 18:13, Cedric BAIL wrote : > On Wed, Nov 20, 2013 at 6:11 PM, Jérémy Zurcher <jer...@asynk.ch> wrote: > > jeyzu pushed a commit to branch master. > > > > http://git.enlightenment.org/core/efl.git/commit/?id=8a3e021298c8d7ebf8cb587554422aa6a93edcc9 > > > > commit 8a3e021298c8d7ebf8cb587554422aa6a93edcc9 > > Author: Jérémy Zurcher <jer...@asynk.ch> > > Date: Wed Nov 20 10:11:21 2013 +0100 > > > > Revert "eina: fix a possible race condition during eina_file_close." > > > > it breaks everything > > Please elaborate. It work for me and solve an actual bugs. How do you > see the problem ? > > > This reverts commit 7e8fb93206ee95945bb757267832537c13ab4287. > > --- > > ChangeLog | 4 ---- > > NEWS | 3 +-- > > src/lib/eina/eina_file.c | 9 +++++++-- > > src/lib/eina/eina_file_common.c | 15 +++------------ > > src/lib/eina/eina_file_common.h | 3 --- > > src/lib/eina/eina_file_win32.c | 7 +++++-- > > src/tests/eina/eina_test_file.c | 34 ---------------------------------- > > 7 files changed, 16 insertions(+), 59 deletions(-) > > > > diff --git a/ChangeLog b/ChangeLog > > index 6c3dea3..3dc7c28 100644 > > --- a/ChangeLog > > +++ b/ChangeLog > > @@ -1,7 +1,3 @@ > > -2013-11-20 Cedric Bail > > - > > - * Eina: Fix a possible race condition during eina_file_close. > > - > > 2013-11-19 Tom Hacohen > > > > * Evas textblock: Fixed order of tags inserted with > > markup_app/prepend. > > diff --git a/NEWS b/NEWS > > index 5ce9bcf..6a1f8bd 100644 > > --- a/NEWS > > +++ b/NEWS > > @@ -268,8 +268,7 @@ Fixes: > > - Fix memory leak in eina_xattr_value_ls. > > - Fix magic failure in eina_value_array_count when array has not been > > allocated. > > - Fix issue when wchar_t is signed and eina_unicode does negative > > array lookups. > > - - Fix eina_file_map_lines() to not drop of one character in the last > > line. > > - - Fix a possible race condition during eina_file_close(). > > + - Eina: fix eina_file_map_lines() to not drop of one character in the > > last line. > > * Eet: > > - Fix PPC (big endian) image codec bug. > > - Fix leak in eet_pbkdf2_sha1 with OpenSSL. > > diff --git a/src/lib/eina/eina_file.c b/src/lib/eina/eina_file.c > > index 8ae5a0f..6d7ee56 100644 > > --- a/src/lib/eina/eina_file.c > > +++ b/src/lib/eina/eina_file.c > > @@ -305,6 +305,11 @@ eina_file_real_close(Eina_File *file) > > { > > Eina_File_Map *map; > > > > + if (file->refcount != 0) return; > > + > > + eina_hash_free(file->rmap); > > + eina_hash_free(file->map); > > + > > EINA_LIST_FREE(file->dead_map, map) > > { > > munmap(map->map, map->length); > > @@ -315,6 +320,8 @@ eina_file_real_close(Eina_File *file) > > munmap(file->global_map, file->length); > > > > if (file->fd != -1) close(file->fd); > > + > > + free(file); > > } > > > > static void > > @@ -905,8 +912,6 @@ eina_file_open(const char *path, Eina_Bool shared) > > n->shared = shared; > > eina_lock_new(&n->lock); > > eina_hash_direct_add(_eina_file_cache, n->filename, n); > > - > > - EINA_MAGIC_SET(n, EINA_FILE_MAGIC); > > } > > else > > { > > diff --git a/src/lib/eina/eina_file_common.c > > b/src/lib/eina/eina_file_common.c > > index f5724d7..7b05b3b 100644 > > --- a/src/lib/eina/eina_file_common.c > > +++ b/src/lib/eina/eina_file_common.c > > @@ -451,26 +451,17 @@ eina_file_close(Eina_File *file) > > > > EINA_SAFETY_ON_NULL_RETURN(file); > > > > - eina_lock_take(&_eina_file_lock_cache); > > - > > eina_lock_take(&file->lock); > > file->refcount--; > > if (file->refcount == 0) leave = EINA_FALSE; > > eina_lock_release(&file->lock); > > - if (leave) goto end; > > + if (leave) return; > > > > - eina_hash_del(_eina_file_cache, file->filename, file); > > + eina_lock_take(&_eina_file_lock_cache); > > > > - // Backend specific file resource close > > + eina_hash_del(_eina_file_cache, file->filename, file); > > eina_file_real_close(file); > > > > - // Generic destruction of the file > > - eina_hash_free(file->rmap); file->rmap = NULL; > > - eina_hash_free(file->map); file->map = NULL; > > - EINA_MAGIC_SET(file, 0); > > - free(file); > > - > > - end: > > eina_lock_release(&_eina_file_lock_cache); > > } > > > > diff --git a/src/lib/eina/eina_file_common.h > > b/src/lib/eina/eina_file_common.h > > index e3ee0fc..0ac704d 100644 > > --- a/src/lib/eina/eina_file_common.h > > +++ b/src/lib/eina/eina_file_common.h > > @@ -24,14 +24,11 @@ > > #include "eina_lock.h" > > #include "eina_list.h" > > > > -#define EINA_FILE_MAGIC 0xFEEDBEEF > > - > > typedef struct _Eina_File_Map Eina_File_Map; > > typedef struct _Eina_Lines_Iterator Eina_Lines_Iterator; > > > > struct _Eina_File > > { > > - EINA_MAGIC; > > const char *filename; > > > > Eina_Hash *map; > > diff --git a/src/lib/eina/eina_file_win32.c b/src/lib/eina/eina_file_win32.c > > index 8290501..cddf2da 100644 > > --- a/src/lib/eina/eina_file_win32.c > > +++ b/src/lib/eina/eina_file_win32.c > > @@ -366,6 +366,9 @@ eina_file_real_close(Eina_File *file) > > { > > Eina_File_Map *map; > > > > + eina_hash_free(file->rmap); > > + eina_hash_free(file->map); > > + > > EINA_LIST_FREE(file->dead_map, map) > > { > > UnmapViewOfFile(map->map); > > @@ -377,6 +380,8 @@ eina_file_real_close(Eina_File *file) > > > > if (file->fm) CloseHandle(file->fm); > > if (file->handle) CloseHandle(file->handle); > > + > > + free(file); > > } > > > > static void > > @@ -832,8 +837,6 @@ eina_file_open(const char *path, Eina_Bool shared) > > n->shared = shared; > > eina_lock_new(&n->lock); > > eina_hash_direct_add(_eina_file_cache, n->filename, n); > > - > > - EINA_MAGIC_SET(n, EINA_FILE_MAGIC); > > } > > else > > { > > diff --git a/src/tests/eina/eina_test_file.c > > b/src/tests/eina/eina_test_file.c > > index e8f735d..f2f3225 100644 > > --- a/src/tests/eina/eina_test_file.c > > +++ b/src/tests/eina/eina_test_file.c > > @@ -441,39 +441,6 @@ START_TEST(eina_test_file_virtualize) > > } > > END_TEST > > > > -static void * > > -_eina_test_file_thread(void *data EINA_UNUSED, Eina_Thread t EINA_UNUSED) > > -{ > > - Eina_File *f; > > - unsigned int i; > > - > > - for (i = 0; i < 10000; ++i) > > - { > > - f = eina_file_open("/bin/sh", EINA_FALSE); > > - fail_if(!f); > > - eina_file_close(f); > > - } > > - > > - return NULL; > > -} > > - > > -START_TEST(eina_test_file_thread) > > -{ > > - Eina_Thread th[4]; > > - unsigned int i; > > - > > - fail_if(!eina_init()); > > - > > - for (i = 0; i < 4; i++) > > - fail_if(!(eina_thread_create(&th[i], EINA_THREAD_NORMAL, 0, > > _eina_test_file_thread, NULL))); > > - > > - for (i = 0; i < 4; i++) > > - fail_if(eina_thread_join(th[i]) != NULL); > > - > > - eina_shutdown(); > > -} > > -END_TEST > > - > > void > > eina_test_file(TCase *tc) > > { > > @@ -482,6 +449,5 @@ eina_test_file(TCase *tc) > > tcase_add_test(tc, eina_file_ls_simple); > > tcase_add_test(tc, eina_file_map_new_test); > > tcase_add_test(tc, eina_test_file_virtualize); > > - tcase_add_test(tc, eina_test_file_thread); > > } > > > > > > -- > > > > > > > > > > -- > Cedric BAIL > > ------------------------------------------------------------------------------ > Shape the Mobile Experience: Free Subscription > Software experts and developers: Be at the forefront of tech innovation. > Intel(R) Software Adrenaline delivers strategic insight and game-changing > conversations that shape the rapidly evolving mobile landscape. Sign up now. > http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel --- Hell'O from Yverdoom Jérémy (jeyzu) ------------------------------------------------------------------------------ Shape the Mobile Experience: Free Subscription Software experts and developers: Be at the forefront of tech innovation. Intel(R) Software Adrenaline delivers strategic insight and game-changing conversations that shape the rapidly evolving mobile landscape. Sign up now. http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel