Changes In Branch 0.8 Through [dec1a50bb0] Excluding Merge-Ins
This is equivalent to a diff from 6b8b7b6a7e to dec1a50bb0
2015-08-22
| ||
11:57 | utils/ofhttp: Add includes required on Solaris check-in: 608e86e951 user: js tags: 0.8 | |
10:15 | Fix compilation for an uncommon define combination check-in: dec1a50bb0 user: js tags: 0.8 | |
2015-08-21
| ||
17:51 | Set version to 0.9-dev check-in: 9d505a482a user: js tags: trunk | |
2015-08-14
| ||
16:43 | Branch for 0.8 check-in: e63c7f6f7d user: js tags: 0.8, 0.8-release | |
16:41 | Update ChangeLog for 0.8 check-in: 6b8b7b6a7e user: js tags: trunk | |
09:44 | ChangeLog: Remove trailing dots check-in: bebee54bff user: js tags: trunk | |
Modified configure.ac from [f7868ab464] to [95c7fe84ef].
|
| | | 1 2 3 4 5 6 7 8 | AC_INIT(ObjFW, 0.8, js@webkeks.org) BUILDSYS_INIT AS_IF([test configure.ac -nt configure], [ AC_MSG_ERROR([configure.ac is newer than configure! Run ./autogen.sh!]) ]) AC_CONFIG_SRCDIR(src) |
︙ | ︙ |
Modified src/OFFile.m from [2c4c5b7c7a] to [da1fb6d2d1].
︙ | ︙ | |||
115 116 117 118 119 120 121 | # define S_IWOTH 0 #endif #define DEFAULT_MODE S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH #define DIR_MODE DEFAULT_MODE | S_IXUSR | S_IXGRP | S_IXOTH #if defined(OF_HAVE_CHOWN) && defined(OF_HAVE_THREADS) | | | | 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | # define S_IWOTH 0 #endif #define DEFAULT_MODE S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH #define DIR_MODE DEFAULT_MODE | S_IXUSR | S_IXGRP | S_IXOTH #if defined(OF_HAVE_CHOWN) && defined(OF_HAVE_THREADS) static of_mutex_t chownMutex; #endif #if !defined(HAVE_READDIR_R) && !defined(_WIN32) && defined(OF_HAVE_THREADS) static of_mutex_t readdirMutex; #endif int of_stat(OFString *path, of_stat_t *buffer) { #if defined(_WIN32) return _wstat64([path UTF16String], buffer); |
︙ | ︙ | |||
203 204 205 206 207 208 209 | @implementation OFFile + (void)initialize { if (self != [OFFile class]) return; #if defined(OF_HAVE_CHOWN) && defined(OF_HAVE_THREADS) | | | | 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 | @implementation OFFile + (void)initialize { if (self != [OFFile class]) return; #if defined(OF_HAVE_CHOWN) && defined(OF_HAVE_THREADS) if (!of_mutex_new(&chownMutex)) @throw [OFInitializationFailedException exceptionWithClass: self]; #endif #if !defined(HAVE_READDIR_R) && !defined(_WIN32) && defined(OF_HAVE_THREADS) if (!of_mutex_new(&readdirMutex)) @throw [OFInitializationFailedException exceptionWithClass: self]; #endif #ifdef __wii__ if (!fatInitDefault()) @throw [OFInitializationFailedException |
︙ | ︙ | |||
395 396 397 398 399 400 401 | encoding = [OFSystemInfo native8BitEncoding]; if ((dir = opendir([path cStringWithEncoding: encoding])) == NULL) @throw [OFOpenItemFailedException exceptionWithPath: path errNo: errno]; # if !defined(HAVE_READDIR_R) && defined(OF_HAVE_THREADS) | | | 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 | encoding = [OFSystemInfo native8BitEncoding]; if ((dir = opendir([path cStringWithEncoding: encoding])) == NULL) @throw [OFOpenItemFailedException exceptionWithPath: path errNo: errno]; # if !defined(HAVE_READDIR_R) && defined(OF_HAVE_THREADS) if (!of_mutex_lock(&readdirMutex)) @throw [OFLockFailedException exception]; # endif @try { for (;;) { struct dirent *dirent; # ifdef HAVE_READDIR_R |
︙ | ︙ | |||
444 445 446 447 448 449 450 | [files addObject: file]; objc_autoreleasePoolPop(pool); } } @finally { closedir(dir); # if !defined(HAVE_READDIR_R) && defined(OF_HAVE_THREADS) | | | 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 | [files addObject: file]; objc_autoreleasePoolPop(pool); } } @finally { closedir(dir); # if !defined(HAVE_READDIR_R) && defined(OF_HAVE_THREADS) if (!of_mutex_unlock(&readdirMutex)) @throw [OFUnlockFailedException exception]; # endif } #else void *pool = objc_autoreleasePoolPush(); HANDLE handle; WIN32_FIND_DATAW fd; |
︙ | ︙ | |||
606 607 608 609 610 611 612 | if (path == nil || (owner == nil && group == nil)) @throw [OFInvalidArgumentException exception]; encoding = [OFSystemInfo native8BitEncoding]; # ifdef OF_HAVE_THREADS | | | 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 | if (path == nil || (owner == nil && group == nil)) @throw [OFInvalidArgumentException exception]; encoding = [OFSystemInfo native8BitEncoding]; # ifdef OF_HAVE_THREADS if (!of_mutex_lock(&chownMutex)) @throw [OFLockFailedException exception]; @try { # endif if (owner != nil) { struct passwd *passwd; |
︙ | ︙ | |||
640 641 642 643 644 645 646 | group: group errNo: errno]; gid = group_->gr_gid; } # ifdef OF_HAVE_THREADS } @finally { | | | 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 | group: group errNo: errno]; gid = group_->gr_gid; } # ifdef OF_HAVE_THREADS } @finally { if (!of_mutex_unlock(&chownMutex)) @throw [OFUnlockFailedException exception]; } # endif if (chown([path cStringWithEncoding: encoding], uid, gid) != 0) @throw [OFChangeOwnerFailedException exceptionWithPath: path owner: owner |
︙ | ︙ |