Commit graph

208 commits

Author SHA1 Message Date
theraven
3da96c981c Add a couple of __strong annotations to pointers. Any non-id pointer that can
store GC'd memory must be __strong.  Currently, this annotation is largely
ignored, because the runtime is a lot more lax about what may store pointers
than Apple's, but this will be tightened up in the future.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33205 72102866-910b-0410-8b05-ffd578937521
2011-05-30 11:40:26 +00:00
theraven
485d23c7c7 More tweaks for garbage collection mode, including making NSNotificationCenter use weak pointers (things are never removed if it uses strong pointers because they remove themselves in the -dealloc method, which is never called, and can't remove themselves in the -finalize method because the -finalize method would not be called until after they have been removed - this is consistent with Apple behaviour).
Gorm now works correctly when built with GC enabled.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33109 72102866-910b-0410-8b05-ffd578937521
2011-05-25 11:15:08 +00:00
rfm
79383c613d fix includes for gcc-4.6
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33069 72102866-910b-0410-8b05-ffd578937521
2011-05-19 08:19:24 +00:00
rfm
5b47a4bd32 old/new objc api updates
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33027 72102866-910b-0410-8b05-ffd578937521
2011-05-12 16:03:08 +00:00
rfm
015756d705 indentation fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32780 72102866-910b-0410-8b05-ffd578937521
2011-04-05 12:12:34 +00:00
rfm
dbaa646d12 avoid compiler/linker warnings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32483 72102866-910b-0410-8b05-ffd578937521
2011-03-07 11:34:17 +00:00
rfm
313cf13c67 Cleanup ... avoid accessing the 'isa' variable directly.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32247 72102866-910b-0410-8b05-ffd578937521
2011-02-20 16:21:43 +00:00
rfm
050f3f7190 Use GSObjCRuntime functions for selector types until/unless we can get
a standard runtime API that handles them.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32240 72102866-910b-0410-8b05-ffd578937521
2011-02-20 07:58:11 +00:00
rfm
feb65c9c78 Recommit tested changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32075 72102866-910b-0410-8b05-ffd578937521
2011-02-11 14:31:25 +00:00
rfm
e679d4e99e Revert back to working code!
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32072 72102866-910b-0410-8b05-ffd578937521
2011-02-11 13:53:54 +00:00
rfm
7d0b4c43c2 further tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32058 72102866-910b-0410-8b05-ffd578937521
2011-02-11 11:45:07 +00:00
theraven
d5e9a52e35 Fix bug reported by static analyser - NSData was testing ivars instead of arguments in -initWithBytesNoCopy:length:freeWhenDone:. The correct behaviour was to throw an exception if passed a NULL pointer and a length. The actual behaviour was to test whether the data object was invalid. This could lead to accidental NULL-pointer dereferencing later.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32030 72102866-910b-0410-8b05-ffd578937521
2011-02-10 10:13:50 +00:00
nicola
b84001b073 Updated code to compile with GCC 4.6 and the new GNU Objective-C runtime
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31765 72102866-910b-0410-8b05-ffd578937521
2010-12-23 02:23:05 +00:00
theraven
f392469c64 Fix a load of warnings from implicit function declarations. A lot were caused by ctype.h and string.h stuff being used everywhere in GNUstep but not included anywhere - they're now included in common.h (at least string.h should also be in Foundation.h - on OS X it is implicitly included via some chain of things from Foundation.h).
All of the sel_* stuff is now replaced with the newer APIs.  As a side-effect, a blob of code that was copied-and-pasted all over GNUstep has now been moved into ObjectiveC2 and just called.

Class posing with libobjc2 will now throw an exception, rather than just aborting.  



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@31268 72102866-910b-0410-8b05-ffd578937521
2010-09-09 16:30:10 +00:00
rfm
0fa4308c1a attempt fix for bug 29920
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@30471 72102866-910b-0410-8b05-ffd578937521
2010-05-29 08:05:03 +00:00
rfm
1a5d643771 generalize define from __MINGW32__ to __MINGW__
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@30001 72102866-910b-0410-8b05-ffd578937521
2010-03-19 12:10:11 +00:00
rfm
5ca5ff96ef further cleanup ... always use -zone method to get an object's zone ...
so people can safely write subclasses using different allocation schemes.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29847 72102866-910b-0410-8b05-ffd578937521
2010-03-05 09:30:18 +00:00
rfm
7ff4d4c9c7 fixups for libobjc2
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29753 72102866-910b-0410-8b05-ffd578937521
2010-02-25 18:49:31 +00:00
rfm
67c72b4031 fix error in printf format
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29699 72102866-910b-0410-8b05-ffd578937521
2010-02-22 10:48:10 +00:00
rfm
53beb40301 deprecates some gnustep runtime wrappers
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29697 72102866-910b-0410-8b05-ffd578937521
2010-02-22 10:13:20 +00:00
rfm
d605c6f7b5 Simplify header inclusion
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29669 72102866-910b-0410-8b05-ffd578937521
2010-02-19 08:12:46 +00:00
rfm
9edbe1a4fc cosmetic tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29657 72102866-910b-0410-8b05-ffd578937521
2010-02-17 11:47:06 +00:00
rfm
f13d56d8ec merge back reorganisation branch
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29615 72102866-910b-0410-8b05-ffd578937521
2010-02-14 10:48:10 +00:00
rfm
072c124d08 Tweaks for building with clang
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29254 72102866-910b-0410-8b05-ffd578937521
2010-01-10 14:38:16 +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
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
fd2861f3ae Add two previously unimplemented methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28252 72102866-910b-0410-8b05-ffd578937521
2009-04-27 08:16:06 +00:00
rfm
5c61643b94 Fixup for non-gc
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28221 72102866-910b-0410-8b05-ffd578937521
2009-04-15 08:25:52 +00:00
rfm
cfb566ed22 more GC improvements
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28220 72102866-910b-0410-8b05-ffd578937521
2009-04-15 08:03:19 +00:00
rfm
b0c507570a port latest gc canges to windows
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28090 72102866-910b-0410-8b05-ffd578937521
2009-03-18 08:50:32 +00:00
rfm
fefde8fb99 Avoid use of old atomic zone function
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@28060 72102866-910b-0410-8b05-ffd578937521
2009-03-10 09:35:14 +00:00
rfm
30cf8bf35b Updates for 10.5 API changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27962 72102866-910b-0410-8b05-ffd578937521
2009-02-23 20:42:32 +00:00
rfm
7201a1f33f GC improvements
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27848 72102866-910b-0410-8b05-ffd578937521
2009-02-11 17:33:31 +00:00
rfm
9f7e2e9c66 Fix bug #24883
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@27098 72102866-910b-0410-8b05-ffd578937521
2008-11-20 00:05:41 +00:00
rfm
e0711a3b8d allow developers more time to adapt to LGPLv3
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26606 72102866-910b-0410-8b05-ffd578937521
2008-06-08 10:38:33 +00:00
rfm
f1d83b9f14 MacOS-X compatibility updates.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@26598 72102866-910b-0410-8b05-ffd578937521
2008-06-06 13:57:06 +00:00
fredkiefer
4f380653db Add some keyed encoding/decoding.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25668 72102866-910b-0410-8b05-ffd578937521
2007-12-03 18:08:58 +00:00
rfm
60f5134a22 Fix for #21133
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25514 72102866-910b-0410-8b05-ffd578937521
2007-10-03 05:36:07 +00:00
rfm
cd46236028 Update to GPL3 and LGPL3
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25482 72102866-910b-0410-8b05-ffd578937521
2007-09-14 11:36:11 +00:00
rfm
3d3b1e37fc Fix logging level for when unable to open file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@25204 72102866-910b-0410-8b05-ffd578937521
2007-05-29 09:07:47 +00:00
rfm
9e7b96ab0e More code tidyups and NSError updates.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23921 72102866-910b-0410-8b05-ffd578937521
2006-10-20 10:56:27 +00:00
rfm
31342aef09 Updates to reduce global namespace pollution. Plenty more remaining.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23795 72102866-910b-0410-8b05-ffd578937521
2006-10-09 14:00:01 +00:00
gcasa
24251c6439 Correct issue in initWithCoder: and encodeWithCoder: in NSData which was causing problems with keyed coding.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23211 72102866-910b-0410-8b05-ffd578937521
2006-08-07 04:14:58 +00:00
rfm
e7962cfb4d avoid spurious compiler warnings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@23027 72102866-910b-0410-8b05-ffd578937521
2006-06-04 06:42:10 +00:00
rfm
f0892499e5 Fix memory allocation accounting error with isa swizzling
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22973 72102866-910b-0410-8b05-ffd578937521
2006-05-23 09:22:53 +00:00
CaS
bb1ce663a4 Tidy use of sized datatypes. Check for invalid asumption of interchangability
of int/long in encoder/decoder methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22291 72102866-910b-0410-8b05-ffd578937521
2006-01-11 08:37:16 +00:00
CaS
7d11eb6607 Bugfix decoding
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22284 72102866-910b-0410-8b05-ffd578937521
2006-01-10 20:37:21 +00:00
CaS
f57ca76cba Fixes for 64bit systems .. mostly cosmetic avoidance of compiler warnings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22282 72102866-910b-0410-8b05-ffd578937521
2006-01-10 10:29:11 +00:00