Commit graph

5107 commits

Author SHA1 Message Date
rfm
b367e467d6 Avoid exposing pthread details in NSLock.h (as much as possible without
impacting performance).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28612 72102866-910b-0410-8b05-ffd578937521
2009-09-06 10:56:04 +00:00
theraven
e772c54dfa Added weak attribute to the synchronization functions so that they won't replace equivalent functions provided by the runtime, if available.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28611 72102866-910b-0410-8b05-ffd578937521
2009-09-05 18:49:48 +00:00
theraven
b29e4570e7 Added enumeration mutation function, called by code automatically inserted by the compiler when a collection mutates during fast enumeration.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28610 72102866-910b-0410-8b05-ffd578937521
2009-09-05 17:43:13 +00:00
theraven
271a54ece9 Moved registration of runtime multithreaded handler to after the creation of the main thread's NSThread object. This fixes a potential issue where the runtime is already in multithreaded mode, calls the handler, and NSException crashes dereferencing the thread object.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28609 72102866-910b-0410-8b05-ffd578937521
2009-09-05 17:28:01 +00:00
theraven
1b2795fd70 Removed files copied from the GNU runtime and no longer needed. GNUstep on a Apple runtime should now no longer by GPL.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28606 72102866-910b-0410-8b05-ffd578937521
2009-09-03 15:52:59 +00:00
rfm
80afb705cf Minor fixes/tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28605 72102866-910b-0410-8b05-ffd578937521
2009-09-03 09:45:23 +00:00
theraven
e833003ca5 Removed bonus semicolon added in earlier commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28603 72102866-910b-0410-8b05-ffd578937521
2009-09-02 22:15:05 +00:00
theraven
c9346f7072 Fixed bug noticed by Fred.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28602 72102866-910b-0410-8b05-ffd578937521
2009-09-02 22:13:48 +00:00
theraven
caf92d88c2 Fixed typo pointed out by Philippe Roussel.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28600 72102866-910b-0410-8b05-ffd578937521
2009-09-02 16:07:00 +00:00
theraven
da0ba10792 Added fix for error reported by Philippe Roussel on GNU/Linux.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28599 72102866-910b-0410-8b05-ffd578937521
2009-09-02 14:47:16 +00:00
theraven
9dfadd809e * Source/NSLock.m
* Headers/Foundation/NSLock.h
	Completely rewritten implementations of NSLock.h classes.  These are now
	faster, more complete, OS X-compatible, and most importantly actually
	work.  The old ones, for example, called functions that were not
	implemented on Windows.  
	* Source/NSThread.m
	Call pthread functions directly in NSThread instead of via the libobjc
	abstraction layer.  Also fixed a few issues, such as GC not being
	initialized properly for NSThread subclasses that override -main (Javaism
	supported by OS X) and tidies up the code in several places, removing
	premature optimizations, especially those that introduce a test for an
	unlikely case at the start of a method and thus slow everything down.

	As a result of this change, GNUstep now depends on an implementation of
	POSIX threads.  This is included as standard on all modern UNIX systems,
	and as an option on less-modern UNIX systems and non-UNIX systems,
	including Windows.  If you are building GNUstep on Windows, please install
	the pthreads-win32 package, available from:

	http://sourceware.org/pthreads-win32/

	PLEASE TEST THIS!  There may be some code that depended on the old
	behaviour.  I have been running the new NSLock implementation on FreeBSD
	for a few weeks without issue; please report to me any problems that you
	have on your platform.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28598 72102866-910b-0410-8b05-ffd578937521
2009-09-02 13:03:13 +00:00
rfm
d073a33adb revert accidental commit
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28592 72102866-910b-0410-8b05-ffd578937521
2009-09-01 12:11:43 +00:00
rfm
8b41f65369 Updates for 1.19.3
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28586 72102866-910b-0410-8b05-ffd578937521
2009-09-01 09:03:28 +00:00
rfm
377d3fd4c4 tweak NSCache changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28582 72102866-910b-0410-8b05-ffd578937521
2009-09-01 04:40:07 +00:00
theraven
a0ab47ec7e Added NSCache (OS X 10.6) implementation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28581 72102866-910b-0410-8b05-ffd578937521
2009-08-31 21:45:53 +00:00
rfm
31045e40c9 further tweak description details
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28579 72102866-910b-0410-8b05-ffd578937521
2009-08-31 07:47:44 +00:00
rfm
486c0d9600 make -description more informative
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28578 72102866-910b-0410-8b05-ffd578937521
2009-08-31 07:08:39 +00:00
rfm
939862240d remove useless log
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28561 72102866-910b-0410-8b05-ffd578937521
2009-08-28 07:35:18 +00:00
rfm
de0a87bab5 fixup location of compatibility method
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28559 72102866-910b-0410-8b05-ffd578937521
2009-08-27 17:32:15 +00:00
rfm
0b6df761b7 fix bad return value
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28555 72102866-910b-0410-8b05-ffd578937521
2009-08-27 14:54:58 +00:00
rfm
6aecebbc9d Fix for bug introduced by adding OSX compatibility for the -path method of
NSURL.  This was causing loading of URLs where the path ends in a slash to
fail (load the wrong URL).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28548 72102866-910b-0410-8b05-ffd578937521
2009-08-26 16:48:15 +00:00
rfm
bbd7e70d76 Updates for 1.19.2 release
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28540 72102866-910b-0410-8b05-ffd578937521
2009-08-25 11:13:00 +00:00
rfm
608d011083 OSX compatibility iprovement.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28528 72102866-910b-0410-8b05-ffd578937521
2009-08-24 07:07:36 +00:00
rfm
0f39425f46 fixes for file handles working with sockets on windows
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28515 72102866-910b-0410-8b05-ffd578937521
2009-08-23 12:34:04 +00:00
gcasa
54fdb742c3 * Source/NSUserDefaults.m: Remove one of the locks in +userLanguages
to avoid a deadlock.
	Patch applied by: Gregory Casamento <greg.casamento@gmail.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28504 72102866-910b-0410-8b05-ffd578937521
2009-08-21 17:44:39 +00:00
rmottola
b753c64597 Joined split-line string constant
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28502 72102866-910b-0410-8b05-ffd578937521
2009-08-21 15:53:05 +00:00
gcasa
04bd61ab32 * Source/NSUserDefaults.m: Changes to bulletproof NSUserDefaults from
deadlocks when it is accessed by more than one thread.
	Patch applied by: Gregory Casamento <greg.casamento@gmail.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28500 72102866-910b-0410-8b05-ffd578937521
2009-08-21 10:30:15 +00:00
rfm
da568f9a9b avoid compiler warning
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28472 72102866-910b-0410-8b05-ffd578937521
2009-08-19 08:24:04 +00:00
rfm
25dd1c7962 Apply patch by Eric Wasylishen for OSX compatibility
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28471 72102866-910b-0410-8b05-ffd578937521
2009-08-19 07:04:21 +00:00
theraven
0e2e4aa752 * Source/NSObject:
- Tweaked NSObject to use atomic ops with LLVM as well as gcc (this
		  probably isn't actually needed)
		- Fixed SIGFPE problem on FreeBSD using proper interfaces instead of 
		an asm hack.
	* Removes various mframe things from being compiled when ffcall/libffi is
	used (mframe.m, NSConnection.m, NSInvocation.m)
	* Turned a nested function in make_strings.m into a macro.  

Tested by Gregory - blame him for any breakage...



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28462 72102866-910b-0410-8b05-ffd578937521
2009-08-15 21:44:21 +00:00
rfm
49fdff0f07 use index set for character sets.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28455 72102866-910b-0410-8b05-ffd578937521
2009-08-12 08:39:07 +00:00
rfm
2313de9e53 Add some argument checking
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28454 72102866-910b-0410-8b05-ffd578937521
2009-08-12 07:49:42 +00:00
fredkiefer
523ae77842 * Source/NSAttributedString.m: Fix keyeded encodgin decoding for
both NSAttributedString and NSMutableAttributedString.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28453 72102866-910b-0410-8b05-ffd578937521
2009-08-11 17:01:50 +00:00
rfm
f1d2144948 fix bug 27224
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28452 72102866-910b-0410-8b05-ffd578937521
2009-08-11 16:40:40 +00:00
rfm
3cc2adbd35 Set zone when reading from file
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28451 72102866-910b-0410-8b05-ffd578937521
2009-08-11 14:03:47 +00:00
rfm
033abe232d Fix leak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28450 72102866-910b-0410-8b05-ffd578937521
2009-08-11 13:36:39 +00:00
rfm
792fce302f fix memory leak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28448 72102866-910b-0410-8b05-ffd578937521
2009-08-10 14:13:09 +00:00
rfm
97be67439f Note that directory enumeration order is undefined.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28439 72102866-910b-0410-8b05-ffd578937521
2009-08-05 08:03:37 +00:00
rfm
c46743bad8 Make handling of accumulated text in 'value' clearer.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28436 72102866-910b-0410-8b05-ffd578937521
2009-08-04 08:08:52 +00:00
rfm
7e70d293f7 fix to handle empty key in XML property list.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28435 72102866-910b-0410-8b05-ffd578937521
2009-08-04 07:47:58 +00:00
rfm
6e50741e9a Fix failed commit
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28434 72102866-910b-0410-8b05-ffd578937521
2009-08-04 06:13:37 +00:00
rfm
0a9865e430 improve logging
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28422 72102866-910b-0410-8b05-ffd578937521
2009-07-31 04:32:46 +00:00
rfm
cf3295a004 Fix text in exception
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28417 72102866-910b-0410-8b05-ffd578937521
2009-07-28 19:04:40 +00:00
rfm
ccea0283a0 ifixup getting charset
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28416 72102866-910b-0410-8b05-ffd578937521
2009-07-28 18:48:37 +00:00
ayers
9b072f06d4 2009-07-27 David Ayers <ayers@fsfe.org>
* Source/Additions/GSCompatibility.m ([-boolValue]): Only compile
	for OS X Versions below 10.5 and sync implementation with -base.
	Reported by: Georg Fleischmann
	


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28413 72102866-910b-0410-8b05-ffd578937521
2009-07-27 07:24:30 +00:00
rfm
52de73a626 Fix minor error setting host header in request.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28404 72102866-910b-0410-8b05-ffd578937521
2009-07-23 08:31:35 +00:00
rfm
25ed260644 New macros for CLANG compatibility
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28402 72102866-910b-0410-8b05-ffd578937521
2009-07-21 09:40:48 +00:00
rfm
784da19ea0 Fix includes and comments
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28398 72102866-910b-0410-8b05-ffd578937521
2009-07-17 05:13:52 +00:00
rfm
f737606d59 make very easy to update if/when we hae non-fragile ivars.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28397 72102866-910b-0410-8b05-ffd578937521
2009-07-16 15:56:31 +00:00
gcasa
60bc083760 * Headers/Foundation/NSOperation.h
* Source/NSOperation.m: Added initial implementation of
	NSOperationQueue.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28395 72102866-910b-0410-8b05-ffd578937521
2009-07-15 00:02:34 +00:00