deadlock fuckers! fix! :)

SVN revision: 44179
This commit is contained in:
Carsten Haitzler 2009-12-04 01:15:19 +00:00
parent 1d0efd8c18
commit 145b7ee2a1
1 changed files with 5 additions and 1 deletions

View File

@ -1352,7 +1352,9 @@ eet_open(const char *file, Eet_File_Mode mode)
eet_flush2(ef); eet_flush2(ef);
ef->references++; ef->references++;
ef->delete_me_now = 1; ef->delete_me_now = 1;
UNLOCK_CACHE;
eet_close(ef); eet_close(ef);
LOCK_CACHE;
} }
ef = eet_cache_find((char *)file, eet_readers, eet_readers_num); ef = eet_cache_find((char *)file, eet_readers, eet_readers_num);
} }
@ -1364,12 +1366,14 @@ eet_open(const char *file, Eet_File_Mode mode)
{ {
ef->delete_me_now = 1; ef->delete_me_now = 1;
ef->references++; ef->references++;
UNLOCK_CACHE;
eet_close(ef); eet_close(ef);
LOCK_CACHE;
} }
ef = eet_cache_find((char *)file, eet_writers, eet_writers_num); ef = eet_cache_find((char *)file, eet_writers, eet_writers_num);
} }
UNLOCK_CACHE; UNLOCK_CACHE;
/* try open the file based on mode */ /* try open the file based on mode */
if ((mode == EET_FILE_MODE_READ) || (mode == EET_FILE_MODE_READ_WRITE)) if ((mode == EET_FILE_MODE_READ) || (mode == EET_FILE_MODE_READ_WRITE))
{ {