Commit graph

6174 commits

Author SHA1 Message Date
Richard Frith-MacDonald
9bfdc923c7 add comment about clang __block workaround
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33996 72102866-910b-0410-8b05-ffd578937521
2011-10-14 16:54:33 +00:00
Richard Frith-MacDonald
341f74b871 threading portability improvement
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33995 72102866-910b-0410-8b05-ffd578937521
2011-10-14 16:43:03 +00:00
Richard Frith-MacDonald
0142bf0f8a tweak minor problems in last changes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33994 72102866-910b-0410-8b05-ffd578937521
2011-10-14 16:19:37 +00:00
Richard Frith-MacDonald
eb8b275c1f internal workaround for clang namespace pollution.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33993 72102866-910b-0410-8b05-ffd578937521
2011-10-14 15:46:13 +00:00
Richard Frith-MacDonald
c5301052a1 fix test for lossy conversions from unicode to other character sets.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33992 72102866-910b-0410-8b05-ffd578937521
2011-10-14 14:16:11 +00:00
Richard Frith-MacDonald
72dceeadc1 avloid namespace collisions for preprocessor constants
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33991 72102866-910b-0410-8b05-ffd578937521
2011-10-14 14:07:34 +00:00
Richard Frith-MacDonald
904fec80bd imore informative logs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33990 72102866-910b-0410-8b05-ffd578937521
2011-10-14 13:59:59 +00:00
Richard Frith-MacDonald
587f8f5666 fix buffer size error
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33989 72102866-910b-0410-8b05-ffd578937521
2011-10-14 13:48:13 +00:00
Richard Frith-MacDonald
a879c34f2d tweak for fast conversion of literals to ascii or latin1
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33988 72102866-910b-0410-8b05-ffd578937521
2011-10-14 13:45:52 +00:00
Richard Frith-MacDonald
6a347fee68 tweak getting cString with specific encoding for unicode
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33987 72102866-910b-0410-8b05-ffd578937521
2011-10-14 13:19:43 +00:00
Richard Frith-MacDonald
0ceff0e920 fix typo
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33986 72102866-910b-0410-8b05-ffd578937521
2011-10-14 13:10:52 +00:00
Richard Frith-MacDonald
37f6b7aac6 define _XOPEN_SOURCE to 600 throughout
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33984 72102866-910b-0410-8b05-ffd578937521
2011-10-14 12:00:02 +00:00
Richard Frith-MacDonald
fbdcab1d55 solaris thread-saff errrno fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33983 72102866-910b-0410-8b05-ffd578937521
2011-10-14 11:40:34 +00:00
Richard Frith-MacDonald
9f68d90c98 fix initialisation bug
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33982 72102866-910b-0410-8b05-ffd578937521
2011-10-14 10:57:40 +00:00
Richard Frith-MacDonald
fcd8fefb9a tweak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33980 72102866-910b-0410-8b05-ffd578937521
2011-10-14 09:34:35 +00:00
Richard Frith-MacDonald
4dc9479f0f implement -hash for constant strings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33979 72102866-910b-0410-8b05-ffd578937521
2011-10-14 07:07:39 +00:00
Richard Frith-MacDonald
9e781c5714 tweak for reporting error code of connection failure
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33977 72102866-910b-0410-8b05-ffd578937521
2011-10-13 13:39:35 +00:00
Richard Frith-MacDonald
9b24a41871 build new private functions on win32
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33975 72102866-910b-0410-8b05-ffd578937521
2011-10-12 16:31:30 +00:00
Richard Frith-MacDonald
0282c8146e windows compile fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33974 72102866-910b-0410-8b05-ffd578937521
2011-10-12 16:23:52 +00:00
Richard Frith-MacDonald
60c4fc3a63 Don't treat constnat string class as ascii
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33973 72102866-910b-0410-8b05-ffd578937521
2011-10-12 14:36:23 +00:00
Richard Frith-MacDonald
ee4d1aef0f Tweaks to support UTF-8 literal string encoding supported by more recent
compilers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33972 72102866-910b-0410-8b05-ffd578937521
2011-10-12 14:28:44 +00:00
Richard Frith-MacDonald
bd460841b4 Fix check for operation on nonblocking socket
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33967 72102866-910b-0410-8b05-ffd578937521
2011-10-11 21:43:00 +00:00
Richard Frith-MacDonald
fcfaac4931 minor string fixups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33966 72102866-910b-0410-8b05-ffd578937521
2011-10-11 21:16:28 +00:00
Niels Grewe
857d32b33d In -[GSMimeParser scanToken:] return @"" instead of nil when parsing an empty
quoted string.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33952 72102866-910b-0410-8b05-ffd578937521
2011-10-08 17:53:17 +00:00
Richard Frith-MacDonald
364fb1ec98 networking portability for for solaris
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33951 72102866-910b-0410-8b05-ffd578937521
2011-10-08 16:29:19 +00:00
Richard Frith-MacDonald
5021629c2b small tweak for lowering resource usage during very heavy use of outgoing
connections.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33950 72102866-910b-0410-8b05-ffd578937521
2011-10-07 15:15:05 +00:00
Richard Frith-MacDonald
f7280475ff fix to reture respnse for synchronous request.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33949 72102866-910b-0410-8b05-ffd578937521
2011-10-07 09:17:14 +00:00
Richard Frith-MacDonald
aae4782eb3 Make the use of nil for a file URL path raise an invalid argument exception
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33939 72102866-910b-0410-8b05-ffd578937521
2011-10-04 05:40:29 +00:00
Fred Kiefer
41298e5ec4 * Source/NSPropertyList.m (GSBinaryPLParser -objectAtIndex:):
Use long long for all integer types. Before we used signed types
which resulted wrong values for negative integers.
* Source/NSKeyedUnarchiver.m (-_decodeObject:): Handle the
string "$null" as nil all the times.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33934 72102866-910b-0410-8b05-ffd578937521
2011-10-03 19:48:30 +00:00
Richard Frith-MacDonald
afc6974925 Provisional IPv6 support added.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33933 72102866-910b-0410-8b05-ffd578937521
2011-10-03 16:03:19 +00:00
Fred Kiefer
2a419593ce * Source/NSData.m (-initWithCoder:, -encodeWithCoder): Correct
keyed encoding/decoding.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33932 72102866-910b-0410-8b05-ffd578937521
2011-10-03 13:22:16 +00:00
Richard Frith-MacDonald
cbf54ac301 Add a few OSX compatibility methods
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33929 72102866-910b-0410-8b05-ffd578937521
2011-10-02 11:17:49 +00:00
Niels Grewe
377a757e54 Started working on NSXMLNode.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33927 72102866-910b-0410-8b05-ffd578937521
2011-10-01 18:43:29 +00:00
Richard Frith-MacDonald
d8432fad48 Minor fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33916 72102866-910b-0410-8b05-ffd578937521
2011-09-30 20:31:15 +00:00
Eric Wasylishen
7d457ce4cc * Source/NSUserDefaults.m:
- Refactoring of the code to read the system language list
  into a separate function, systemLanguages().
- Add support for the LANGUAGE environment variable, a GNU extension.
  It holds a colon-separated list of locales, and is intended to let
  the user specify a list of their preferred languages in order.
  For example, the language settings GUI in Ubuntu modifies the
  LANGUAGE variable.

  More info here:
  http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAGE-variable
- When populating NSLanguages, "expand" locales into a list of
  related variants, formed by stripping off region suffixes. This
  ensures that if a user's environment is set to a regional version
  of a language (say CanadaFrench) but an application is only
  traslated into French, the plain French translation will still be used.

  e.g. if the system locales are {fr_CA, en_CA}, expand the list to
  {fr_CA, fr, en_CA, en}.
* Headers/GNUstepBase/GSLocale.h:
* Source/GSLocale.m:
New functions GSLocaleVariants and GSLanguagesFromLocale


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33910 72102866-910b-0410-8b05-ffd578937521
2011-09-29 19:00:46 +00:00
Gregory John Casamento
f0c2282319 Shorten the error message here. Move the bulk of the explaination into README.initialize in the Documentation folder.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33909 72102866-910b-0410-8b05-ffd578937521
2011-09-29 17:04:13 +00:00
Richard Frith-MacDonald
9e8187eebf Fixup to get correct type information when handling an incoming message as
suggested by Fred.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33832 72102866-910b-0410-8b05-ffd578937521
2011-09-12 16:03:07 +00:00
Richard Frith-MacDonald
4baaff38cb Attempt workaround for runtime providing insufficient information in callback.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33814 72102866-910b-0410-8b05-ffd578937521
2011-09-07 09:42:50 +00:00
Richard Frith-MacDonald
fcf071b0b7 fix bug #34154
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33792 72102866-910b-0410-8b05-ffd578937521
2011-08-27 16:46:26 +00:00
Richard Frith-MacDonald
03c0773da1 build on apple
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33791 72102866-910b-0410-8b05-ffd578937521
2011-08-26 11:21:32 +00:00
Fred Kiefer
8da720fc7a * Source/NSObject.m (__builtin_offsetof): Add workaround for build in missing
in old versions of gcc.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33774 72102866-910b-0410-8b05-ffd578937521
2011-08-22 11:02:10 +00:00
Fred Kiefer
80c8a7ff06 Temporary revert David's change to use PRIxPTR, PRIuPTR and
PRIdPTR. Old compilers don't handled these well. (That change
didn't have a ChangeLog entry)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33766 72102866-910b-0410-8b05-ffd578937521
2011-08-20 13:05:37 +00:00
Fred Kiefer
028ad4a59c * Source/Additions/GSMime.m: Use specific IMP type for method
returning BOOL value.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33763 72102866-910b-0410-8b05-ffd578937521
2011-08-17 17:45:10 +00:00
David Chisnall
4cdea64975 Make -base compile almost without warnings again. Fixes:
- Using the correct format specifier
- Remove substringFromRange: (GNUstep extension) from NSString.h and use the non-deprecated version in -base.
- Delete definitions of methods that are the same in both a class and a category on that class (NSArray and NSObject).

Two files still have warnings:

- The GNUTLS stuff is using a load of deprecated APIs.
- xmlparse.m replaces a method using a category.  This method seems to always return nil.  Not sure what it's meant to do, or why it isn't a delegate of some kind.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33756 72102866-910b-0410-8b05-ffd578937521
2011-08-16 16:04:43 +00:00
David Chisnall
ca12a84e3f Use the word-size-agnostic printf specifier.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33755 72102866-910b-0410-8b05-ffd578937521
2011-08-16 14:47:35 +00:00
Richard Frith-MacDonald
6dae192890 fix detection of excess data at end of multipart docs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33738 72102866-910b-0410-8b05-ffd578937521
2011-08-15 08:59:52 +00:00
Richard Frith-MacDonald
1f86f92794 redo/correct last fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33736 72102866-910b-0410-8b05-ffd578937521
2011-08-15 06:16:51 +00:00
Richard Frith-MacDonald
2c508306bd revert attepted bugfix ...needs more testing debugging
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33735 72102866-910b-0410-8b05-ffd578937521
2011-08-14 20:49:16 +00:00
Richard Frith-MacDonald
de099615e8 tweak parsing end of headers
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33734 72102866-910b-0410-8b05-ffd578937521
2011-08-14 18:38:13 +00:00
David Chisnall
bfd034b5b6 #ifdef -> #if
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33732 72102866-910b-0410-8b05-ffd578937521
2011-08-14 08:49:33 +00:00
David Chisnall
433554830d Fix the build with the pure non-fragile ABI by declaring macros before using them.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33724 72102866-910b-0410-8b05-ffd578937521
2011-08-13 15:28:22 +00:00
Fred Kiefer
826db719cc * Source/NSAffineTransform.m (-appendTransform:,
-prependTransform:): Fix bug in optimisation code by using a local variable.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33716 72102866-910b-0410-8b05-ffd578937521
2011-08-11 07:27:52 +00:00
David Chisnall
6cdbd621be Replace the implementations of NSFastEnumeration in NSConcrete{Hash,Map}Table with ones that work and don't cause people to dereference pointers that are set to random integer values.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33713 72102866-910b-0410-8b05-ffd578937521
2011-08-09 08:43:54 +00:00
David Chisnall
8c89a86607 In -finalize, we're pretending to be the Objective-C runtime, so we need to
actually use isa directly, rather than the safe version.  A better solution
would be to call object_dispose(), but this only works for objects created with
class_createInstance().



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33704 72102866-910b-0410-8b05-ffd578937521
2011-08-07 18:00:55 +00:00
David Chisnall
bb2e9d0627 When calling -.cxx_dealloc, look up the superclass before calling. This method
may destroy the receiver's class, if it's a user-generated one, so we can't
guarantee that it is valid after the call.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33701 72102866-910b-0410-8b05-ffd578937521
2011-08-07 16:56:58 +00:00
David Chisnall
2d364a86ca Bracket the runtime.h include in a check.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33696 72102866-910b-0410-8b05-ffd578937521
2011-08-05 17:34:47 +00:00
David Chisnall
fa6f119996 Clean up NSRegularExpression, so that it compiles without warnings with or without ICU, but we don't pretend that we support things that we don't and silently return nonsense results to make debugging difficult for GNUstep users.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33688 72102866-910b-0410-8b05-ffd578937521
2011-08-03 12:04:27 +00:00
David Chisnall
682c9beb5b Make base do unintuitive and stupid things in the name of Apple compatibility (hopefully Apple will fix their implementation in 10.7.something...).
Fix some tests.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33687 72102866-910b-0410-8b05-ffd578937521
2011-08-03 09:04:12 +00:00
Fred Kiefer
00c8832228 Remove some of the compiler warnings on system without clang or ICU.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33680 72102866-910b-0410-8b05-ffd578937521
2011-08-02 08:33:33 +00:00
David Chisnall
86edfd0c2b Remove accidentally-committed log statements.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33669 72102866-910b-0410-8b05-ffd578937521
2011-08-01 10:48:07 +00:00
David Chisnall
dbe026608e Ooops, should have been -> const id[].
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33667 72102866-910b-0410-8b05-ffd578937521
2011-07-31 18:37:12 +00:00
David Chisnall
8713e21d91 More ARC fixups: id* -> const id* in NSSet
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33666 72102866-910b-0410-8b05-ffd578937521
2011-07-31 18:34:40 +00:00
David Chisnall
b85364de7e Cleanup:
- (void)release;
to
- (oneway void)release;
so everything implementing -release actually implements the one declared in the NSObject protocol.

Start marking things that are unavailable in ARC mode as unavailable in ARC mode.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33660 72102866-910b-0410-8b05-ffd578937521
2011-07-31 15:31:39 +00:00
David Chisnall
a124b3a52a Fix the 64-bit bug that Fred spotted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33649 72102866-910b-0410-8b05-ffd578937521
2011-07-27 08:46:31 +00:00
David Chisnall
48e1b94ef8 Change the order of the retain count and the padding, so the retain count is
always the word before isa.

Switch to using the correct kind of alignof (the ABI alignment in structures,
not the preferred alignment of the type - this stops us from allocating 4 bytes
of padding on x86-32 where there is no need for any)



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33642 72102866-910b-0410-8b05-ffd578937521
2011-07-26 20:08:10 +00:00
David Chisnall
7698b8d176 64-bit fix in last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33641 72102866-910b-0410-8b05-ffd578937521
2011-07-26 19:16:14 +00:00
David Chisnall
c0f08f202a Use the small object support in libobjc2 trunk for 31 / 61-bit signed NSNumbers on 32 / 64-bit platforms respectively. Still to do: add an NSSmallFloat equivalent for 64-bit platforms, storing a float.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33639 72102866-910b-0410-8b05-ffd578937521
2011-07-26 19:05:43 +00:00
Quentin Mathe
9cb22639d9 Fixed missing oneway qualifier on -release return type.
Recent Clang trunk versions complain about it.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33634 72102866-910b-0410-8b05-ffd578937521
2011-07-26 10:47:16 +00:00
Fred Kiefer
ae18c2fee0 * Source/NSJSONSerialization.m: Get this file to compile with
standard gcc settings fro GNUstep.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33633 72102866-910b-0410-8b05-ffd578937521
2011-07-25 20:30:39 +00:00
David Chisnall
c1cca9a336 Added NSJSONSerialization (10.7) implementation. The code path reading from an NSInputStream is not well tested - please try and break it!
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33631 72102866-910b-0410-8b05-ffd578937521
2011-07-25 15:50:51 +00:00
David Chisnall
d1ab6b2dba Don't delete the global lock - we may still need it!
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33630 72102866-910b-0410-8b05-ffd578937521
2011-07-25 14:32:44 +00:00
David Chisnall
acd62d77ff Removed debugging NSLog() that was accidentally committed.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33629 72102866-910b-0410-8b05-ffd578937521
2011-07-25 12:51:24 +00:00
David Chisnall
f65a7c5bda Add some explicit casting where required in NSConcretePointerFunctions.h
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33626 72102866-910b-0410-8b05-ffd578937521
2011-07-24 22:12:59 +00:00
Fred Kiefer
254aa22792 Try to clean up after last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33625 72102866-910b-0410-8b05-ffd578937521
2011-07-24 20:47:36 +00:00
David Chisnall
d2ea054c26 Lots of little fixes to make -base compile with -Werror (now builds without warnings).
Richard: I'm unsure about three of these, which were fixes in memset() calls in:
- NSConcreteMapTable.m
- NSConcreteHashTable.m
- Additions/NSData+GNUstepBase.m

Please can you check them?  I think they are intended to zero the entire object
(rather than the first word), but the lack of comments makes me unsure.

Most changes were just tweaks to variable types.  I've also removed some dead code from NSInvocation.  This was small group of things that were marked for internal use only, but not actually referenced in the code anywhere.

Other improvements:

- NSArray / NSDictionary fixed up to use the 10.7 (ARC-friendly) prototypes.
- getObjects:andKeys: implemented for NSDictionary (10.5 method)
- NSPointerArray and NSHashTable now properly support weak objects.
- Tests for weak objects in collections.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33621 72102866-910b-0410-8b05-ffd578937521
2011-07-24 13:09:22 +00:00
David Chisnall
bc37adfb0c Add support (and test) for weak keys and values in NSMapTable. This support should work in GC mode. It also works if the runtime supports ARC, even if the compiler does not use this support.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33617 72102866-910b-0410-8b05-ffd578937521
2011-07-23 16:16:01 +00:00
David Chisnall
40456f7787 Remove the zone pointer from objects. Now we always query the zones to find the relevant pointer. Zones are still supported, but we now optimise for the case where they are not used.
To disable zone support completely, NSAllocateObject() should ignore the zone and NSDeallocateObject() should skip the zone lookup.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33610 72102866-910b-0410-8b05-ffd578937521
2011-07-23 12:19:19 +00:00
David Chisnall
018fab87bd Missing part of the NSArray update.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33609 72102866-910b-0410-8b05-ffd578937521
2011-07-23 12:02:04 +00:00
David Chisnall
d323a291d8 Change id* -> id[] for OS X 10.7 compatibility in NSArray. This change is required for ARC: now, id* means pointer to a single object, id[] means array.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33607 72102866-910b-0410-8b05-ffd578937521
2011-07-22 16:07:23 +00:00
David Chisnall
51446f39de I give up. No brain left.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33605 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:37:38 +00:00
David Chisnall
df82f8b96c Third try.
[NSException raise: GSNotEnoughCoffeeException];



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33604 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:34:08 +00:00
David Chisnall
eb32254242 Add missing #import.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33603 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:27:04 +00:00
David Chisnall
4b027a2106 Stub for NSRegularExpression when a compatible version of ICU is not present.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33602 72102866-910b-0410-8b05-ffd578937521
2011-07-22 13:23:11 +00:00
David Chisnall
d9fda65728 Added NSRegularExpressionSearch (10.7) support to NSString.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33600 72102866-910b-0410-8b05-ffd578937521
2011-07-21 13:17:27 +00:00
Eric Wasylishen
5c802d5d57 * Source/NSNumberFormatter.m
(-attributedStringForObjectValue:withDefaultAttributes:):
Guard against initializing an NSAttributedString with a nil string.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33596 72102866-910b-0410-8b05-ffd578937521
2011-07-21 01:43:07 +00:00
Eric Wasylishen
e626936660 * Source/GSAttributedString.m: Throw an exception if the string object
passed to -initWithString:attributes: doesn't respond to -length, or if
it is nil. This is the same behaviour as OS X.
* Source/NSAttributedString.m (-init): Call -initWithString:attributes:
with @"" instead of nil, since passing nil now causes an exception
to be thrown.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33595 72102866-910b-0410-8b05-ffd578937521
2011-07-21 01:23:08 +00:00
Richard Frith-MacDonald
12dee189f3 try to ensure that including objc/runtime.h always works to get the new API.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33583 72102866-910b-0410-8b05-ffd578937521
2011-07-19 09:38:51 +00:00
Richard Frith-MacDonald
4a5cb96bef For the avoidance of confusion, remove references to obsolete header.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33562 72102866-910b-0410-8b05-ffd578937521
2011-07-15 13:53:45 +00:00
Richard Frith-MacDonald
44979bb7f4 fix faulty assert
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33560 72102866-910b-0410-8b05-ffd578937521
2011-07-15 13:46:51 +00:00
Richard Frith-MacDonald
497cb2af93 ssh handshake improvements and consmetic tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33535 72102866-910b-0410-8b05-ffd578937521
2011-07-12 11:40:15 +00:00
David Chisnall
a64f21744d Do the things from the last commit in the correct order.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33523 72102866-910b-0410-8b05-ffd578937521
2011-07-11 15:12:47 +00:00
David Chisnall
6893ce1a95 Lazily initialize POSIX threads, matching OS X behaviour and stopping us from crashing when calling autorelease from a thread that was not previously registered explicitly (yuck!)
Also do some quite hacky (and not totally correct) things to try to make sure that we aren't confused into thinking that the first NSThread is the main thread, if it's created on a separate thread.  Currently only supported on FreeBSD and OpenBSD.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33521 72102866-910b-0410-8b05-ffd578937521
2011-07-11 14:31:36 +00:00
David Chisnall
26b91d9bcd [NSNumber -init] should not destroy itself when called as [super init]. This behaviour was breaking anything that subclassed NSNumber in user code (e.g. PyObjC).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33517 72102866-910b-0410-8b05-ffd578937521
2011-07-11 12:36:04 +00:00
Fred Kiefer
866c1dfcb4 * Source/GSLocale.m (GSLanguageFromLocale): Handle local "C.UTF-8"
correctly. Needed for Cygwin.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33516 72102866-910b-0410-8b05-ffd578937521
2011-07-11 11:55:35 +00:00
Fred Kiefer
9c39943894 Support the OpenSuse key TIMEZONE in /etc/sysconfig/clock.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33512 72102866-910b-0410-8b05-ffd578937521
2011-07-11 09:35:54 +00:00
Wolfgang Lux
f9f1f879f4 Override NSObject +zone to ensure that -zone returns a valid zone
pointer when it is called on a class object.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33498 72102866-910b-0410-8b05-ffd578937521
2011-07-10 14:48:26 +00:00
David Chisnall
6bf1350874 Silence type errors by declaring the correct superclass of GSPlaceholderString.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33481 72102866-910b-0410-8b05-ffd578937521
2011-07-07 12:32:59 +00:00
David Chisnall
540e690dc5 Don't DESTROY() the placeholder string - that doesn't destroy it (since it overrides -release to do nothing), it just makes it unreachable.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33480 72102866-910b-0410-8b05-ffd578937521
2011-07-07 12:32:05 +00:00
David Chisnall
99141c2dc1 Fix a memory leak that valgrind spotted.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33479 72102866-910b-0410-8b05-ffd578937521
2011-07-07 12:30:10 +00:00
David Chisnall
0618607b3a Use -retainCount instead of NSExtraRefCount() in gs_weak_load() so we can support objects that define a custom retain / release mechanism in weak variables.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33478 72102866-910b-0410-8b05-ffd578937521
2011-07-07 12:29:54 +00:00