Commit graph

6470 commits

Author SHA1 Message Date
gcasa
a31620793c * Source/NSXMLElement.m: Removing assertion that
parent must not be nil per Cocoa documentation for
	-(id)parent method in NSXMLNode.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34450 72102866-910b-0410-8b05-ffd578937521
2012-01-06 23:00:03 +00:00
rfm
711f7f21de remove useless comments
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34442 72102866-910b-0410-8b05-ffd578937521
2012-01-06 12:48:49 +00:00
rfm
5a53ea0d64 Rewrite hierarchy handling to match OSX
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34441 72102866-910b-0410-8b05-ffd578937521
2012-01-06 12:22:30 +00:00
dpsimons
e9380ba351 only include the header when version, encoding, or standalone has been set
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34433 72102866-910b-0410-8b05-ffd578937521
2012-01-06 04:53:59 +00:00
gcasa
ce6ccc0662 * Source/NSXMLElement.m: in setChildren: set the childCount.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34432 72102866-910b-0410-8b05-ffd578937521
2012-01-06 03:21:10 +00:00
gcasa
774cd36acb * Source/NSXMLElement.m: Correct warning in copyWithZone: added
return.  Correct issue with childCount being out of sync.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34431 72102866-910b-0410-8b05-ffd578937521
2012-01-06 03:11:14 +00:00
gcasa
cadb2ab9c8 * Source/NSXMLElement.m: Correct warning in copyWithZone: added
return.  Correct issue with childCount being out of sync.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34430 72102866-910b-0410-8b05-ffd578937521
2012-01-06 03:09:14 +00:00
gcasa
0d998a3394 * ChangeLog
* Source/NSXMLDocument.m
	* Source/NSXMLElement.m
	* Source/NSXMLNode.m: Implement copyWithZone:, correct issues
	with previous revert.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34428 72102866-910b-0410-8b05-ffd578937521
2012-01-06 02:43:26 +00:00
rfm
fa365da6de corrected exception type t match OSX
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34427 72102866-910b-0410-8b05-ffd578937521
2012-01-05 20:49:29 +00:00
rfm
1780a56fb4 Little tweak to ease debugging ... get compiler to know the class of the
_internal pointer and generate information so gdb can access the internal
cass without needing a cast.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34425 72102866-910b-0410-8b05-ffd578937521
2012-01-05 20:40:12 +00:00
rfm
b4c0707ab6 Minor intiialisation tweaks to match OSX
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34423 72102866-910b-0410-8b05-ffd578937521
2012-01-05 18:55:17 +00:00
rfm
7620644234 replace a few lost lines
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34415 72102866-910b-0410-8b05-ffd578937521
2012-01-05 15:44:45 +00:00
rfm
edf5a1afc1 add a feew comments
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34414 72102866-910b-0410-8b05-ffd578937521
2012-01-04 13:00:04 +00:00
rfm
81262af7e6 fix missing comparison
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34413 72102866-910b-0410-8b05-ffd578937521
2012-01-04 12:44:29 +00:00
rfm
a2a14fcb8d Fix NSXML ABI breakage
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34412 72102866-910b-0410-8b05-ffd578937521
2012-01-04 12:41:45 +00:00
rfm
34f183865b whitespace tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34411 72102866-910b-0410-8b05-ffd578937521
2012-01-04 12:38:18 +00:00
rfm
3f6bf1fbba Revert ABI breakage
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34410 72102866-910b-0410-8b05-ffd578937521
2012-01-04 09:20:32 +00:00
gcasa
9a24dd2985 * Headers/Foundation/NSXMLDocument.h
* Headers/Foundation/NSXMLElement.h
	* Headers/Foundation/NSXMLNode.h: Move declarations.
	* Source/NSXMLDocument.m: Correct parsing issues.
	* Source/NSXMLElement.m: Remove local declaration of _children
	* Source/NSXMLNode.m: Remove internal.  Move all declarations here
	directly.
	
2012-01-03 14:22-EST Gregory John Casamento <greg.casamento@gmail.com>



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34408 72102866-910b-0410-8b05-ffd578937521
2012-01-03 21:42:33 +00:00
gcasa
0b7ae8929b * Source/NSXMLDocument.m: Implement XMLStringWithOptions:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34407 72102866-910b-0410-8b05-ffd578937521
2012-01-03 19:30:03 +00:00
gcasa
5193c6fe20 * Headers/Foundation/NSXMLElement.h
* Headers/Foundation/NSXMLNode.h
	* Source/NSXMLElement.m
	* Source/NSXMLNode.m: Move _URI to NSXMLNode.
	change dealloc accordingly.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34406 72102866-910b-0410-8b05-ffd578937521
2012-01-03 18:10:45 +00:00
gcasa
44399b36f4 * Source/NSXMLNode.m: Implement copyWithZone:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34405 72102866-910b-0410-8b05-ffd578937521
2012-01-03 17:49:09 +00:00
gcasa
f83149b549 * Headers/Foundation/NSXMLNode.h: Add _stringValue
* Source/NSXMLNode.m: Change stringValue and setStringValue:
	resolvingEntities: to assign to _stringValue instead of _objectValue.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34404 72102866-910b-0410-8b05-ffd578937521
2012-01-03 17:23:44 +00:00
gcasa
8f97e14738 * Source/NSXMLDocument.m: Change stack implementation to
use lastObject/removeLastObject to implement the stack instead
	of inserting and deleting at index 0.
	* Source/NSXMLElement.m: Implemented XMLStringWithOptions:
	* Source/NSXMLNode.m: Implemented XMLStringWithOptions:,
	skeletal implementation of setStringValue:resolvingEntities:



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34403 72102866-910b-0410-8b05-ffd578937521
2012-01-03 17:15:29 +00:00
rfm
9a5f196bf1 fix format string error
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34402 72102866-910b-0410-8b05-ffd578937521
2012-01-03 14:49:11 +00:00
rfm
5b0ed744eb 64bit printf tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34401 72102866-910b-0410-8b05-ffd578937521
2012-01-03 14:48:04 +00:00
rfm
5c38f0b4c9 add missing cast on mingw
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34399 72102866-910b-0410-8b05-ffd578937521
2012-01-03 10:31:41 +00:00
fredkiefer
b27e0e32db * Source/NSException.m (-raise): Only set the stack when the
exception gets first raised. This fixes bug #35192
Patch by Larry Campbell <lcampbel@akamai.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34398 72102866-910b-0410-8b05-ffd578937521
2012-01-03 09:34:10 +00:00
gcasa
3014907a3a * Headers/Foundation/NSXMLElement.h: Change _attributes to be
a NSMutableDictionary instead of an NSMutableArray.
	* Source/NSXMLElement.m: Change implementation of some methods
	to use an NSMutableDictionary instead of arrays.  Initialize
	ivars in initializer.
	* Source/NSXMLPrivate.h: Remove redundant method.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34394 72102866-910b-0410-8b05-ffd578937521
2012-01-03 03:28:25 +00:00
fredkiefer
6f2aee3252 * Source/GSSocketStream.m (-initWithInput:output:): Attempt to
replace deprecated GNUTLS functions with newer ones for GNUTLS >= 2.12.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34390 72102866-910b-0410-8b05-ffd578937521
2012-01-02 15:50:15 +00:00
fredkiefer
eaed3df26b * Source/NSArray.m (-objectsAtIndexes:): Fix comparision of
unsigned variable with NSNotFound.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34389 72102866-910b-0410-8b05-ffd578937521
2012-01-02 15:07:32 +00:00
gcasa
73273b7e75 2012-01-02 02:26-EST Gregory John Casamento <greg.casamento@gmail.com>
* Source/NSXMLNode.m>: Minor correction. Move setName out of 
	private category.
	* Tests/base/NSXMLNode/children.m: Update test.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34385 72102866-910b-0410-8b05-ffd578937521
2012-01-02 07:27:56 +00:00
rfm
da19c7df2e trivial formating tweaks ... add missing white space
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34374 72102866-910b-0410-8b05-ffd578937521
2012-01-01 07:38:53 +00:00
dpsimons
0c39cf5314 Set Elements to be NSXMLElementKind
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34372 72102866-910b-0410-8b05-ffd578937521
2011-12-31 02:13:19 +00:00
gcasa
f2604e1d43 First cut at NSXMLDocument changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34371 72102866-910b-0410-8b05-ffd578937521
2011-12-30 21:40:12 +00:00
dpsimons
841b0c1ef1 Fix -addTimeInterval: to copy calendarFormat of original date
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34363 72102866-910b-0410-8b05-ffd578937521
2011-12-29 18:28:27 +00:00
rfm
464b7ff32f fix for #35164
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34355 72102866-910b-0410-8b05-ffd578937521
2011-12-24 13:14:46 +00:00
wlux
5ccc63c882 Implement NSTextCheckingResult -resultByAdjustingRangesWithOffset:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34350 72102866-910b-0410-8b05-ffd578937521
2011-12-23 16:49:23 +00:00
wlux
be918f5589 Various fixes in NSTextCheckingResult class.
Add copyright notice to header and implementation files.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34349 72102866-910b-0410-8b05-ffd578937521
2011-12-23 16:09:49 +00:00
wlux
f7afd83ded Correct result of NSRegularExpression -rangeOfFirstMatchInString:...
When no match is found location must be set to NSNotFound.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34348 72102866-910b-0410-8b05-ffd578937521
2011-12-23 14:59:14 +00:00
wlux
42ffcb55bf Introduce NSRegularExpression support for libicu versions prior to 4.4,
which don't provide the UText interface to regular expressions.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34345 72102866-910b-0410-8b05-ffd578937521
2011-12-22 12:52:56 +00:00
wlux
4c75f12273 Fix an uninitialized variable bug, which was introduced by a careless
change while adding IPv6 support and would have the +port method of
NSSocketPort randomly return invalid ports.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34343 72102866-910b-0410-8b05-ffd578937521
2011-12-22 08:30:39 +00:00
rmottola
dddfc5fa7b Fix blocking compiler warning (ggc 4.5.3)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34327 72102866-910b-0410-8b05-ffd578937521
2011-12-19 23:04:04 +00:00
fredkiefer
233003cff2 * Source/NSPortCoder.m (-versionForClassName:): Use NSInteger for
version to avoid compiler warning on 64-bit system.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34308 72102866-910b-0410-8b05-ffd578937521
2011-12-17 14:05:25 +00:00
rfm
13e98151ab Try to ensure new defaults files are created as needed.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34307 72102866-910b-0410-8b05-ffd578937521
2011-12-17 06:32:42 +00:00
rfm
c471992651 fix formatting errors
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34301 72102866-910b-0410-8b05-ffd578937521
2011-12-16 07:28:05 +00:00
rfm
ee3f0b14a0 changes to support alternative header locations
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34290 72102866-910b-0410-8b05-ffd578937521
2011-12-15 09:42:39 +00:00
ericwa
402a06fb2e * Source/NSFileManager.m:
* Headers/Foundation/NSFileManager.h: Add removeItemAtPath:error:
method, as a simple wrapper around removeFileAtPath:handler: with
no handler.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34251 72102866-910b-0410-8b05-ffd578937521
2011-12-06 06:21:33 +00:00
theraven
d24a7d619c Fix small int -> string conversion on 64-bit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34229 72102866-910b-0410-8b05-ffd578937521
2011-11-29 18:19:37 +00:00
rfm
e621db5aac tweak an error message
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34213 72102866-910b-0410-8b05-ffd578937521
2011-11-24 14:46:06 +00:00
rfm
76a74fd7ae Rewrite to store defaults in multiple files (one per persistent domain).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34201 72102866-910b-0410-8b05-ffd578937521
2011-11-21 11:24:26 +00:00
rfm
3415a59abe fix errors in BOM handling
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34187 72102866-910b-0410-8b05-ffd578937521
2011-11-18 05:19:50 +00:00
rfm
fc8d1c8260 get base to compile again, and improve readability/consistency
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34184 72102866-910b-0410-8b05-ffd578937521
2011-11-17 06:11:36 +00:00
theraven
6a299cb671 Store tiny strings (up to 8 ASCII characters) inside the pointer. Strings of
this length are fairly common, and this makes them very cheap to store / copy /
compare (pointer comparisons test for equality).  8 characters seems to be
enough for quite a lot of common uses, such as path components and tokens.
There are possibly still some things constructing tiny strings and not using
these.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34181 72102866-910b-0410-8b05-ffd578937521
2011-11-16 20:48:50 +00:00
theraven
8d00177934 Implement the double boxing techniques used by Smalltalk/X and Cincom Smalltalk. Now we can conceal most doubles inside a pointer. This is most useful for LanguageKit, but should save some memory / malloc overhead / heap fragmentation in any code that uses a lot of NSNumbers (e.g. anything that deals with big plists). OS X 10.7 employs a similar trick.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34179 72102866-910b-0410-8b05-ffd578937521
2011-11-16 17:29:15 +00:00
fedor
1178aa0db0 Fix include location
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34173 72102866-910b-0410-8b05-ffd578937521
2011-11-15 16:17:47 +00:00
rfm
059d6435c3 deal with old FIXME about creating library path
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34169 72102866-910b-0410-8b05-ffd578937521
2011-11-14 10:01:24 +00:00
rfm
b2b57f1610 fix missing return
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34137 72102866-910b-0410-8b05-ffd578937521
2011-11-09 13:46:45 +00:00
fredkiefer
4856432f9b * Source/NSValueTransformer.m
([NSUnarchiveFromDataTransformer-reverseTransformedValue],
[NSUnarchiveFromDataTransformer-transformedValue]): Use
archiver instead of keyed archiver.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34131 72102866-910b-0410-8b05-ffd578937521
2011-11-07 15:28:30 +00:00
rfm
cf33bdf2e6 tweak length check in last change to ignore line breaks and bad characters
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34129 72102866-910b-0410-8b05-ffd578937521
2011-11-07 09:01:26 +00:00
rfm
c28138f3fa make base64 decoding more tolerant.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34128 72102866-910b-0410-8b05-ffd578937521
2011-11-07 08:15:00 +00:00
rfm
26f7e4b33d SX compatibility tweak ... allow nil arg for -timeIntervalSinceDate:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34117 72102866-910b-0410-8b05-ffd578937521
2011-11-04 10:38:16 +00:00
rfm
19d0014c7c retry after interrupts
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34111 72102866-910b-0410-8b05-ffd578937521
2011-11-02 17:19:37 +00:00
rfm
40eb0f82fa fix typo
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34110 72102866-910b-0410-8b05-ffd578937521
2011-11-02 16:40:44 +00:00
rfm
c46da8eb3f tweaks for 64bit sparc
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34109 72102866-910b-0410-8b05-ffd578937521
2011-11-02 16:39:39 +00:00
rfm
5d7701c466 fix alignment error
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34108 72102866-910b-0410-8b05-ffd578937521
2011-11-02 15:46:02 +00:00
rfm
0575536e78 Literal string equality tests ... implement another optimisation, plus one
spotted by Fred, plus a fix for another bug spotted by Fred!


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34102 72102866-910b-0410-8b05-ffd578937521
2011-11-01 11:43:40 +00:00
rfm
27807e706c improve literal string optimisation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34101 72102866-910b-0410-8b05-ffd578937521
2011-11-01 09:43:25 +00:00
rfm
84d3190d31 fix bug spotted by fred
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34094 72102866-910b-0410-8b05-ffd578937521
2011-10-31 10:00:29 +00:00
rfm
84a297282f Implement optimisations suggested by Fred's vcachegrind profiling.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34093 72102866-910b-0410-8b05-ffd578937521
2011-10-31 08:12:26 +00:00
fredkiefer
e3594c5773 * Source/GSeq.h: Replace unsigned with NSUInteger.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34088 72102866-910b-0410-8b05-ffd578937521
2011-10-29 16:48:55 +00:00
rfm
a86fa6f9b9 fix failure to terminate loop properly
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34085 72102866-910b-0410-8b05-ffd578937521
2011-10-28 18:17:36 +00:00
rfm
22289342b4 tweak for more efficient string handling
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34084 72102866-910b-0410-8b05-ffd578937521
2011-10-28 15:02:46 +00:00
rfm
a220e9bdf0 clean up comments a little
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34083 72102866-910b-0410-8b05-ffd578937521
2011-10-28 14:31:46 +00:00
rfm
b374bdb3c9 tweak last optimisation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34082 72102866-910b-0410-8b05-ffd578937521
2011-10-28 14:30:47 +00:00
rfm
a4c7e88a11 fix error replacing strings in a string, and optimise literal strings a bit
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34081 72102866-910b-0410-8b05-ffd578937521
2011-10-28 14:25:17 +00:00
rfm
1c0ad8aa26 Tweaks to avoid compiler warnings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34054 72102866-910b-0410-8b05-ffd578937521
2011-10-25 08:02:38 +00:00
fredkiefer
32cd99926f Imporve keyed decoding.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34049 72102866-910b-0410-8b05-ffd578937521
2011-10-24 14:33:30 +00:00
fredkiefer
6a54c84a72 * Source/NSProcessInfo.m: Add includes needed for the HAVE_PROCFS
case.
* Source/common.h: Correct last commit, the #endif was placed
incorrectly.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34041 72102866-910b-0410-8b05-ffd578937521
2011-10-22 13:59:05 +00:00
rfm
51d3096c8b another attempted workaround for __block issue
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34036 72102866-910b-0410-8b05-ffd578937521
2011-10-20 09:52:01 +00:00
rfm
ba1232afff clean up and comment last fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34033 72102866-910b-0410-8b05-ffd578937521
2011-10-20 07:09:57 +00:00
rfm
142034664f quick hack for bug 34603
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34032 72102866-910b-0410-8b05-ffd578937521
2011-10-19 21:38:52 +00:00
rfm
2934175c27 fixes for gnutls detection and objc library detection
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34030 72102866-910b-0410-8b05-ffd578937521
2011-10-19 16:53:39 +00:00
rfm
a8ce28dd9f tidyup private api
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34029 72102866-910b-0410-8b05-ffd578937521
2011-10-19 15:25:38 +00:00
rfm
d074288f00 fix for failure to load global defaults
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34026 72102866-910b-0410-8b05-ffd578937521
2011-10-19 13:32:50 +00:00
rfm
62e4aa75b9 Hide user resources in .GNUstep for standalone packages
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34019 72102866-910b-0410-8b05-ffd578937521
2011-10-18 05:56:03 +00:00
rfm
eca1f5a0f2 documentation cleanups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34015 72102866-910b-0410-8b05-ffd578937521
2011-10-17 10:59:02 +00:00
qmathe
c7693fb2ba Fixed NSXMLNode compilation when using the "pure" non-fragile ABI
(--disable-mixedabi was passed to Base configure).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34013 72102866-910b-0410-8b05-ffd578937521
2011-10-17 10:24:07 +00:00
rfm
c7392120d2 Allow bare "." as path name, but fix template to use "./"
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34012 72102866-910b-0410-8b05-ffd578937521
2011-10-17 09:10:18 +00:00
fredkiefer
eb3657cd58 * Source/NSString.m (-initWithCoder:): In keyed coding the key
"NS.bytes" may contain either an NSData or an NSString object.
Not sure about the encoding, I am using UTF8.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34010 72102866-910b-0410-8b05-ffd578937521
2011-10-17 08:28:38 +00:00
rfm
05c5405d34 fix misssing line in last mod
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34007 72102866-910b-0410-8b05-ffd578937521
2011-10-15 18:42:16 +00:00
rfm
2481f5f9f9 added Quentin's fix.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34006 72102866-910b-0410-8b05-ffd578937521
2011-10-15 18:41:24 +00:00
rfm
d73267f7e0 git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34005 72102866-910b-0410-8b05-ffd578937521 2011-10-15 18:36:51 +00:00
rfm
f5677433dd fix copy/paste error
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34000 72102866-910b-0410-8b05-ffd578937521
2011-10-15 08:15:03 +00:00
rfm
2bf86630a2 Portability tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33999 72102866-910b-0410-8b05-ffd578937521
2011-10-15 07:59:19 +00:00
rfm
2f9fdd24b8 Use _POSIX_C_SOURCE=199506L
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33998 72102866-910b-0410-8b05-ffd578937521
2011-10-15 05:02:22 +00:00
rfm
ef9bb6249e include errno for strerror
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33997 72102866-910b-0410-8b05-ffd578937521
2011-10-14 17:53:46 +00:00
rfm
2b1ff67600 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
rfm
3312c2634a 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
rfm
241155db60 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
rfm
b644d057ee 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
rfm
ca4c6c8c43 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
rfm
99ca14e878 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
rfm
fecac8cc4d 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
rfm
ed6078f217 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
rfm
d14298591a 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
rfm
0f17556fc3 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
rfm
46a53d440f 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
rfm
48bc86ddf8 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
rfm
3dcc2ab2ad 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
rfm
d5088db475 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
rfm
503088a01c 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
rfm
400f0b9e4d 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
rfm
2756763d0f 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
rfm
ac2c5d6090 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
rfm
a019a0480c 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
rfm
d18a469216 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
rfm
48fa5991ab 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
rfm
3cc9fb2c50 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
rfm
ccbd4060d9 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
thebeing
44830d5fd2 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
rfm
c0ddb7f5b9 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
rfm
fde1cac9d3 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
rfm
04c72fb364 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
rfm
c71ffe21e9 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
fredkiefer
926f3ccb03 * 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
rfm
6b8dc7ef6c 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
fredkiefer
bc796f4304 * 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
rfm
6efa3c983e 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
thebeing
a8bcdd81c1 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
rfm
223eb3356c 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
ericwa
6352d91406 * 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
gcasa
eebba60c4b 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
rfm
6094a0cfa6 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
rfm
6cd7e3a588 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
rfm
b7b4333de4 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
rfm
f4e03baeea 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
fredkiefer
dff5311a0b * 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
fredkiefer
9e7246aa24 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
fredkiefer
c3d229f716 * 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
theraven
5568644a5e 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
theraven
5d60193f9c 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
rfm
bc7be959e5 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
rfm
8c2da63941 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
rfm
5b054c22e1 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
rfm
4e5360267c 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
theraven
209d75627d #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
theraven
157da23407 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
fredkiefer
67702ed4dd * 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
theraven
11817ed00a 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
theraven
68f58ffe56 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
theraven
8d699f6ff8 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
theraven
1330e3cbfc 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
theraven
f72d31cd68 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
theraven
a04ed1a9ff 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
fredkiefer
dafc3301e5 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
theraven
999a0cb544 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
theraven
1aaba6c0d5 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
theraven
e2c5fe29fe 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
theraven
f77f9b1f35 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
theraven
bc62c44b2b 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
theraven
1d7274697b 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
theraven
9c03fb74fb 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
theraven
206a427809 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
qmathe
c9e3c58f06 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
fredkiefer
e8ee222d6d * 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
theraven
1d43e6de35 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
theraven
ce32c10f45 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
theraven
6af87a82cd 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
theraven
4eb0fe5390 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
fredkiefer
da112a776b 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
theraven
ceba92a265 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
theraven
fc206e3169 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
theraven
863fff32b7 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
theraven
9dbeddeeae 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
theraven
b5b216f2be 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
theraven
a76cd2adb3 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
theraven
d24eeb55ce 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
theraven
0d5d27b6a1 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
theraven
4a277ee9ac 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
theraven
b45d78dfa7 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
ericwa
909fc55ca2 * 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
ericwa
5800130467 * 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
rfm
9623471068 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
rfm
cc524f2704 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
rfm
8dadaadea4 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
rfm
6264555674 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
theraven
853f52049b 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
theraven
354c8b3e5a 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
theraven
166a5fd8f5 [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
fredkiefer
3719351613 * 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
fredkiefer
2279a6ccfb 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
wlux
3d7865c21b 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
theraven
3d2999fc40 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
theraven
f40d537913 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
theraven
e1517e15e6 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
theraven
d5d099e7a6 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
theraven
af93046588 Fix typo NS -> GS. We don't actually want NSAllocateObject to call NSAllocateObject...
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33458 72102866-910b-0410-8b05-ffd578937521
2011-07-04 21:23:26 +00:00
theraven
4d48d0bcaa Switch the order of the reference count and the zone so that the reference count (in reference counted mode) is always immediately in front of the object. Please test this!!
Opt NSObject into the fast path for ARC.  ARC will now not call the retain / release / autorelease methods on NSObject or any classes that inherit their implementation of these methods from NSObject.  In quick and dirty testing, this gives about a 10-20% speedup.  



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33446 72102866-910b-0410-8b05-ffd578937521
2011-07-04 11:31:28 +00:00
theraven
a064345ddd Don't call c++ constructors when allocating a class with class_createInstance() - this function calls them itself, and calling them twice is a bad idea.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33436 72102866-910b-0410-8b05-ffd578937521
2011-07-03 11:04:04 +00:00
theraven
72e4d13156 Rewrote NSProxy's -retain / -release to be the same as NSObject, not its own ad-hoc thing.
Added declaration of __bridge for use in non-ARC mode.

Tweaked arrayWithObjects:count: to take a const id* parameter, to avoid ARC
treating it as a write-back parameter.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33425 72102866-910b-0410-8b05-ffd578937521
2011-06-30 14:44:58 +00:00
theraven
57aca2c837 Add support to NSObject for automatically zeroing __weak references when using ARC.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33408 72102866-910b-0410-8b05-ffd578937521
2011-06-29 13:13:15 +00:00
theraven
554a136f3c Small tweaks to NSGarbageCollector.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33402 72102866-910b-0410-8b05-ffd578937521
2011-06-29 11:46:45 +00:00
rfm
fa4f612062 move comment to be before the method it applies to
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33380 72102866-910b-0410-8b05-ffd578937521
2011-06-26 10:27:52 +00:00
wlux
1d5f115076 Fix implementation of NSString -getParagraphStart🔚contentsEnd:forRange:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33379 72102866-910b-0410-8b05-ffd578937521
2011-06-26 10:03:10 +00:00
fredkiefer
f6bec228b9 Add a few 10.6 NSURL methods to NSBundle.
Based on patch by julian.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33367 72102866-910b-0410-8b05-ffd578937521
2011-06-22 23:01:01 +00:00
rfm
50b71cb1bc locking fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33356 72102866-910b-0410-8b05-ffd578937521
2011-06-20 07:47:47 +00:00
rfm
33843644e1 Add some flexibility
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33355 72102866-910b-0410-8b05-ffd578937521
2011-06-20 07:33:27 +00:00
rfm
53b5f5405c fix a couple of leak detection bugs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33353 72102866-910b-0410-8b05-ffd578937521
2011-06-20 04:37:20 +00:00
rfm
e78ceb4c96 more leak cleanup stuff
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33349 72102866-910b-0410-8b05-ffd578937521
2011-06-19 13:34:17 +00:00
rfm
8b2ffba3d9 Start stuff for handling cleanup on process exit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33344 72102866-910b-0410-8b05-ffd578937521
2011-06-19 09:26:03 +00:00
rfm
3d1656a7bd fix uninitialised variable
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33342 72102866-910b-0410-8b05-ffd578937521
2011-06-18 18:11:57 +00:00
rfm
59540e5b9f fix possibly uninitialised variable
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33341 72102866-910b-0410-8b05-ffd578937521
2011-06-18 17:47:37 +00:00
rfm
05f8f8f257 Patches by Sebastian Reitenbach
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33338 72102866-910b-0410-8b05-ffd578937521
2011-06-18 12:57:30 +00:00
rfm
72c9155ff3 10.6 sompatibility (some)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33337 72102866-910b-0410-8b05-ffd578937521
2011-06-18 07:09:28 +00:00
rfm
54a0546f98 Fix xml parse error
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33327 72102866-910b-0410-8b05-ffd578937521
2011-06-17 13:47:24 +00:00
rfm
074a57a018 Add some requests 10.6 methods ... untested.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33326 72102866-910b-0410-8b05-ffd578937521
2011-06-17 11:45:28 +00:00
fredkiefer
d00b0bd62c Make Avahi work with gcc 2.95.
Patch by Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33291 72102866-910b-0410-8b05-ffd578937521
2011-06-13 14:50:25 +00:00
fredkiefer
8fb735ef34 Add rest of Sebastian's patch.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33280 72102866-910b-0410-8b05-ffd578937521
2011-06-11 15:32:37 +00:00
fredkiefer
f527f7a973 * Source\NSCalendar.m: Protect the name id.
Patch by Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33276 72102866-910b-0410-8b05-ffd578937521
2011-06-11 10:44:38 +00:00
rfm
212534bfba Add configure option to control gdomap port
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33264 72102866-910b-0410-8b05-ffd578937521
2011-06-09 17:08:41 +00:00
rfm
2e8445ffdc remove observer on dealloc
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33257 72102866-910b-0410-8b05-ffd578937521
2011-06-07 18:34:39 +00:00
fredkiefer
93b2eadbf8 Add [NSURL -checkResourceIsReachableAndReturnError:].
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33245 72102866-910b-0410-8b05-ffd578937521
2011-06-04 15:08:37 +00:00
rfm
5bb50a3205 apply Wolfgangs fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33238 72102866-910b-0410-8b05-ffd578937521
2011-06-03 06:02:18 +00:00
rmottola
ad9905a172 Disable use of tzname on OpenBSD too
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33229 72102866-910b-0410-8b05-ffd578937521
2011-06-02 07:45:41 +00:00
rfm
e189595561 another system specific tweak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33228 72102866-910b-0410-8b05-ffd578937521
2011-06-02 06:54:23 +00:00
rfm
1931f89535 fix typo
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33227 72102866-910b-0410-8b05-ffd578937521
2011-06-01 22:12:21 +00:00
rfm
f9e0929417 More attempts to work around system specific timezone inconsistencies
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33226 72102866-910b-0410-8b05-ffd578937521
2011-06-01 22:04:46 +00:00
rfm
ba720e4293 minor tweak to fallback
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33222 72102866-910b-0410-8b05-ffd578937521
2011-06-01 15:15:52 +00:00
rfm
09f50b3388 fix boundary
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33219 72102866-910b-0410-8b05-ffd578937521
2011-06-01 11:44:48 +00:00
thebeing
a21c1b4e17 Adjust callback prototypes to use NSUInteger instead of unsigned int.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33214 72102866-910b-0410-8b05-ffd578937521
2011-05-31 14:19:26 +00:00
rfm
d70e36cea8 always create autorelease pools for mixed GC mode support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33212 72102866-910b-0410-8b05-ffd578937521
2011-05-31 07:55:06 +00:00
rfm
a3d6ab0806 minor map/hash table compatibility tweaks and simplify notification center
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33210 72102866-910b-0410-8b05-ffd578937521
2011-05-31 06:46:17 +00:00
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
f9cc9494d3 (Hopefully) fix the build with GS_WITH_GC.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33185 72102866-910b-0410-8b05-ffd578937521
2011-05-28 22:35:57 +00:00
fredkiefer
b79e6ba0be Remove compiler warnings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33184 72102866-910b-0410-8b05-ffd578937521
2011-05-28 20:27:20 +00:00
theraven
0f262c600e Make NSPointerArray insert the correct read / write barriers in GC mode.
Add some helper functions to NSConcretePointerFunctions.h that make it easier
to do this in the other collections that need to support GC.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33180 72102866-910b-0410-8b05-ffd578937521
2011-05-28 18:05:29 +00:00
ericwa
3aa5c524e6 tweak and re-enable atomic ops detection
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33179 72102866-910b-0410-8b05-ffd578937521
2011-05-28 18:05:14 +00:00
theraven
ac4b932048 Fix a few functions that I missed for hybrid mode.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33178 72102866-910b-0410-8b05-ffd578937521
2011-05-28 15:28:24 +00:00
theraven
84a09a6d75 Make CFRetain() / CFRelease() behaviour dependent on GC mode.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33177 72102866-910b-0410-8b05-ffd578937521
2011-05-28 15:15:05 +00:00
theraven
ed2ccb68d9 First pass at hybrid GC mode. This will try use retain-release mode if the collector is not running. Code will run in retain/release mode unless something compiled with -fobjc-gc-only is loaded.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33174 72102866-910b-0410-8b05-ffd578937521
2011-05-28 14:51:40 +00:00
fredkiefer
9e3b2540f6 * Source/NSString.m (-initWithFormat:locale:): Make sure va_end()
gets called.
Patch by Stefan Bidigaray <stefanbidi@gmail.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33172 72102866-910b-0410-8b05-ffd578937521
2011-05-28 13:32:29 +00:00
theraven
d3da3cf24f Make NSGarbageCollector return nil when compiled in GC mode but run in non-GC mode.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33170 72102866-910b-0410-8b05-ffd578937521
2011-05-28 13:13:42 +00:00
theraven
75fa6eb931 Accidentally left some non-GC code enabled in GC mode.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33169 72102866-910b-0410-8b05-ffd578937521
2011-05-28 13:09:57 +00:00
theraven
19e71aa612 __weak is only allowed on ivars and globals, so we need to turn the Observation structure into a class.
Richard:

I've run the test suite with GC disabled on Linux/x86-64 and nothing broke, but can you please review these changes carefully anyway?

We seem to be using a complex custom allocator for a structure that is not allocated or deallocated.  In typical programs, it looks like we're actually just wasting memory by using the memory pool here.  Looking at the commit log, this hasn't really been touched for about 10 years, so possibly the assumptions are no longer valid.  I can only see this being useful if someone is adding and removing hundreds of notification observers every run loop iteration.  Do you have code that does this?  If not, then can I remove the custom allocator?



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33165 72102866-910b-0410-8b05-ffd578937521
2011-05-28 12:49:52 +00:00
thebeing
07fa091275 Disable atomic ops detection for the time being.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33163 72102866-910b-0410-8b05-ffd578937521
2011-05-28 10:00:22 +00:00
theraven
2c9886b127 This one isn't really important, since this code path is only ever used in non-GC mode, but it keeps the static analyser happy.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33145 72102866-910b-0410-8b05-ffd578937521
2011-05-27 12:00:57 +00:00
theraven
e50e12129e Make -drain and -release in NSAutoreleasePool do the same thing (rather than one calling the other) in non-GC mode.
Replace all -release messages sent to autorelease pools with -drain.  In non-GC mode, these are equivalent.  In GC mode, these trigger a collection.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33143 72102866-910b-0410-8b05-ffd578937521
2011-05-27 11:48:44 +00:00
rfm
3dd46a1d8c minor tweaks for atomic inc/dec support
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33142 72102866-910b-0410-8b05-ffd578937521
2011-05-27 10:05:25 +00:00
theraven
2949efeb19 Revert accidentally committed changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33140 72102866-910b-0410-8b05-ffd578937521
2011-05-27 09:18:57 +00:00
thebeing
b6cee11863 Attempt to detect the flags needed to enable compiler intrinsics for atomic
operations.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33134 72102866-910b-0410-8b05-ffd578937521
2011-05-26 18:37:58 +00:00
theraven
2b06cff91a Use RTLD_NOLOAD, if it's supported.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33131 72102866-910b-0410-8b05-ffd578937521
2011-05-26 18:29:43 +00:00
theraven
ba6f3867a8 More GC fixes. Most notably, mark the thread object as not collectable, since it's hidden away in TLS where the GC can't find it.
GC now works well enough for LanguageKit to run.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33123 72102866-910b-0410-8b05-ffd578937521
2011-05-26 13:24:13 +00:00
rfm
957ee2b8ef Another attempt to improve atomic inc/dec
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33119 72102866-910b-0410-8b05-ffd578937521
2011-05-25 22:18:39 +00:00
rfm
e4e38170f9 Tweak atomic inc/dec code
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33116 72102866-910b-0410-8b05-ffd578937521
2011-05-25 16:47:11 +00:00
rfm
794bd55f57 partial revert
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33115 72102866-910b-0410-8b05-ffd578937521
2011-05-25 15:53:17 +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
cf144e76f1 attempt multithreading bugfix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33107 72102866-910b-0410-8b05-ffd578937521
2011-05-25 09:20:42 +00:00
theraven
9c75389ee7 Initial pass at implementing fully Apple-compatible GC. This requires the code to be built with -fobjc-gc or -fobjc-gc-only, and requires a runtime that implements all of the support functions (GNUstep runtime trunk or 1.5 when it's release).
Currently, there are a few places where we should be calling NSAllocateCollectable() without NSScannedOption, but are actually calling NSZoneMalloc() unless we're in GC mode.  We should not need separate code paths for this anywhere outside NSZone, since NSAllocateCollectable() will work in non-GC mode as well.

A few of the changes should be tweaked slightly so that they do run-time tests.  For example, when compiling with -fobjc-gc, we may be linked against non-GC code, which will use -retain and -release but won't use the memory barriers.  Supporting this nicely is a lot of effort, and I'm not fully convinced it's a good idea.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33104 72102866-910b-0410-8b05-ffd578937521
2011-05-24 14:43:27 +00:00
rfm
d9f4c65624 try to cope better with apps which leak autorelease pools.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33099 72102866-910b-0410-8b05-ffd578937521
2011-05-24 10:52:25 +00:00
rfm
445d287303 fix main bundle path
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33088 72102866-910b-0410-8b05-ffd578937521
2011-05-23 10:51:58 +00:00
rfm
6fb9b78161 quoted-printable fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33082 72102866-910b-0410-8b05-ffd578937521
2011-05-22 06:22:05 +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
9c9c98aad3 use errno.h for thread safety
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33028 72102866-910b-0410-8b05-ffd578937521
2011-05-12 16:08:10 +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
fredkiefer
995276efc8 Fix keyed decoding for GSMutableArray and GSPlaceholderArray.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33026 72102866-910b-0410-8b05-ffd578937521
2011-05-12 08:24:15 +00:00
rfm
df0421b216 tolerate missing/incorrect character encoding declarations
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33012 72102866-910b-0410-8b05-ffd578937521
2011-05-09 11:35:00 +00:00
theraven
27aa31a2b4 Remove spurious &s
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32985 72102866-910b-0410-8b05-ffd578937521
2011-05-05 11:25:12 +00:00
ericwa
02682c63b1 * Source/Additions/GSObjCRuntime.m (GSSelectorFromNameAndTypes):
With gcc 4.6 libobjc, GSSelectorFromNameAndTypes was calling some
functions like sel_get_any_typed_uid that were not declared (they're
declared in objc/objc-api.h which cannot be imported). I had to copy
over these function declarations, otherwise incorrect function calls
are generated which corrupt selectors (at least on x86-64).



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32968 72102866-910b-0410-8b05-ffd578937521
2011-05-02 20:10:54 +00:00
rfm
faaaafd6a6 Cleanup/simplify for readability and fix bug copying new ivars
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32966 72102866-910b-0410-8b05-ffd578937521
2011-05-02 09:02:02 +00:00
theraven
e76add23ed Added missing ivar access functions.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32939 72102866-910b-0410-8b05-ffd578937521
2011-04-28 18:41:01 +00:00
ericwa
bffc43307d * Source/NSNumberFormatter.m: Move the body of -init to a method called
-_NSNumberFormatterInit, and call this in -initWithCoder: so that
instances created with -initWithCoder: are initialized correctly.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32931 72102866-910b-0410-8b05-ffd578937521
2011-04-27 02:43:03 +00:00
theraven
d6e22f687b After going to all of the effort of recomputing the frame size, actually store the one that we compute instead of accidentally discarding it.
It would probably be a good idea if we skipped the entire disassemble / reassemble code path if we've got sensible method encoding strings.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32908 72102866-910b-0410-8b05-ffd578937521
2011-04-19 16:26:09 +00:00
theraven
215c7fff9d __objc_responds_to() -> class_respondsToSelector().
No functionality change, just a switch to using the portable public functions.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32863 72102866-910b-0410-8b05-ffd578937521
2011-04-14 18:04:50 +00:00
rfm
3ed3b692e3 gc fixup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32860 72102866-910b-0410-8b05-ffd578937521
2011-04-14 12:31:51 +00:00
rfm
9344307ecc tweak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32841 72102866-910b-0410-8b05-ffd578937521
2011-04-13 14:34:39 +00:00
rfm
4e16bf0896 improve documentation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32840 72102866-910b-0410-8b05-ffd578937521
2011-04-13 14:30:20 +00:00
rfm
bf055f4e56 Minor fixups for release ... mostly avoid failed testcases.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32837 72102866-910b-0410-8b05-ffd578937521
2011-04-12 05:41:53 +00:00
nicola
88621c104a Improved checks for native ObjC exceptions. We now check the runtime support here, and disable them from here regardless of what gnustep-make did (this makes it easier to change the runtime without reconfiguring gnustep-make). Small update to ObjC runtime code for GCC 4.6
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32820 72102866-910b-0410-8b05-ffd578937521
2011-04-09 13:47:37 +00:00
rfm
5750a59f45 fix bug opening connection to mail server
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32797 72102866-910b-0410-8b05-ffd578937521
2011-04-07 10:58:07 +00:00
rfm
03ea086c00 avoid compiler warnings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32796 72102866-910b-0410-8b05-ffd578937521
2011-04-07 07:56:56 +00:00
rfm
0ae9a6c552 remove unused directory and obsolete comments
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32795 72102866-910b-0410-8b05-ffd578937521
2011-04-07 07:32:00 +00:00
rfm
49b2b9c764 Apply patch for bug #32899
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32794 72102866-910b-0410-8b05-ffd578937521
2011-04-07 05:09:08 +00:00
rfm
7595c08261 try to get C++ constructur/destructor calling working for all.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32781 72102866-910b-0410-8b05-ffd578937521
2011-04-05 12:13:12 +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
a9e35855d7 fix timezone bug on mingw spotted by Fred
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32778 72102866-910b-0410-8b05-ffd578937521
2011-04-04 20:54:26 +00:00
rfm
94f95cd118 fixup for signedness ... charValue always returns a signed char
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32777 72102866-910b-0410-8b05-ffd578937521
2011-04-04 16:35:20 +00:00
rfm
c078d97164 portability bugfixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32769 72102866-910b-0410-8b05-ffd578937521
2011-04-04 10:57:49 +00:00
rfm
3e0fcb2b73 fix leak and weak docs a little
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32767 72102866-910b-0410-8b05-ffd578937521
2011-04-03 19:14:29 +00:00
rfm
47b6cf1384 tweaks for OpenBSD
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32766 72102866-910b-0410-8b05-ffd578937521
2011-04-03 09:54:57 +00:00
rfm
b1a7add38e GC fixup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32765 72102866-910b-0410-8b05-ffd578937521
2011-04-03 08:20:57 +00:00
rfm
23fc4889d1 GC fix for proxy finalisation error.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32764 72102866-910b-0410-8b05-ffd578937521
2011-04-03 04:25:52 +00:00
rmottola
a224756aea add directory of the local headers
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32761 72102866-910b-0410-8b05-ffd578937521
2011-04-01 12:40:52 +00:00
rfm
1533014594 fix character mapping error
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32748 72102866-910b-0410-8b05-ffd578937521
2011-03-31 20:16:53 +00:00
rfm
c688f6d764 Cleanup and fix to build additipns library on apple systems.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32737 72102866-910b-0410-8b05-ffd578937521
2011-03-29 11:18:10 +00:00
rfm
b3e917014c fixup for apple
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32736 72102866-910b-0410-8b05-ffd578937521
2011-03-29 11:07:14 +00:00
rfm
472d91f049 casts to keep compiler happy
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32733 72102866-910b-0410-8b05-ffd578937521
2011-03-29 09:40:14 +00:00
rfm
5dd6a0d7e0 64bit safety fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32731 72102866-910b-0410-8b05-ffd578937521
2011-03-29 08:16:02 +00:00
theraven
a4993b1fe9 Added a really ugly hack that makes NSConnection work on 64-bit platforms, without depending on undefined behaviour. This is not the correct fix - that needs to be done by someone who understands the code a bit better than me. See mailing list post for details.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32727 72102866-910b-0410-8b05-ffd578937521
2011-03-28 23:56:31 +00:00
rmottola
4e29676292 safer and more portable pointer access
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32717 72102866-910b-0410-8b05-ffd578937521
2011-03-28 08:50:45 +00:00
rfm
1250bd6d77 add comments for clarification
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32697 72102866-910b-0410-8b05-ffd578937521
2011-03-24 06:24:05 +00:00