Differences From Artifact [aa89efc62e]:
- File
src/exceptions/OFException.m
— part of check-in
[5b37fbeb82]
at
2020-12-20 21:26:08
on branch trunk
— Return error instead of using errno for threading
errno is problematic for Amiga libraries and is also not thread-safe on
some systems, even though it should. (user: js, size: 7593) [annotate] [blame] [check-ins using] [more...]
To Artifact [9ab19e4a0d]:
- File
src/exceptions/OFException.m
— part of check-in
[f02b51feba]
at
2020-12-21 02:34:09
on branch trunk
— Don't use OFMutex in constructors
It's possible OFMutex is not loaded yet. (user: js, size: 7556) [annotate] [blame] [check-ins using] [more...]
︙ | ︙ | |||
32 33 34 35 36 37 38 | #import "OFString.h" #import "OFSystemInfo.h" #import "OFInitializationFailedException.h" #import "OFLockFailedException.h" #import "OFUnlockFailedException.h" | | | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | #import "OFString.h" #import "OFSystemInfo.h" #import "OFInitializationFailedException.h" #import "OFLockFailedException.h" #import "OFUnlockFailedException.h" #ifdef OF_HAVE_THREADS # import "mutex.h" #endif #if defined(OF_WINDOWS) && defined(OF_HAVE_SOCKETS) # include <winerror.h> #endif |
︙ | ︙ | |||
71 72 73 74 75 76 77 | #endif #if !defined(HAVE_STRERROR_R) && defined(OF_HAVE_THREADS) static of_mutex_t mutex; OF_CONSTRUCTOR() { | | > | > > > | 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | #endif #if !defined(HAVE_STRERROR_R) && defined(OF_HAVE_THREADS) static of_mutex_t mutex; OF_CONSTRUCTOR() { OF_ENSURE(of_mutex_new(&mutex) == 0); } OF_DESTRUCTOR() { of_mutex_free(&mutex); } #endif OFString * of_strerror(int errNo) { OFString *ret; |
︙ | ︙ |