Commit graph

184 commits

Author SHA1 Message Date
Richard Frith-Macdonald
6d5084e3e1 Delete commented out code accidentally left in on last commit 2021-08-27 10:52:32 +01:00
Richard Frith-Macdonald
0d12a1e77e Changes to address mostm of Fred's comments 2021-08-27 09:19:38 +01:00
Richard Frith-Macdonald
b71a5bfc40 Use our own struct tm 2021-08-14 12:43:44 +01:00
Richard Frith-Macdonald
5162d888dc timezone updates for version2 files 2021-08-11 08:43:20 +01:00
Frederik Seiffert
b41953d274 More robust check for Windows ICU
Also ensure that we don't include both unicode/*.h and icu.h.
2021-08-08 17:27:40 +02:00
Frederik Seiffert
dc32970502 Add support for using ICU DLL from Windows 10
Requires Windows 10 version 1903 (May 2019 Update):
https://docs.microsoft.com/en-us/windows/win32/intl/international-components-for-unicode--icu-

Also adds missing configure check for unicode/utext.h.
2021-08-03 16:52:38 +02:00
Frederik Seiffert
abfe4e2a04 Use native threading and locking APIs on Windows
Removes dependency on pthread library and uses fast Slim Reader/Writer (SRW) locks for NSLock/NSRecursiveLock/NSCondition/NSConditionLock as well as all internal locks. Adds GS_MUTEX_*() macros in GSPThread.h, that are being used for all internal locking instead of pthread APIs.

Also adds support for thread priorities on Windows, fixes method signature of +[NSThread setThreadPriority:] to match Apple platforms, and adds error handling in same method.
2021-07-29 14:22:27 +02:00
Richard Frith-Macdonald
3b8bbb00ba Try to make timezone parsing more robust: always use standard header for posix time zone files. 2021-07-29 10:35:19 +01:00
Richard Frith-Macdonald
395fafde6f Set file version consistently to avoid misunderstanding 2021-07-25 07:50:31 +01:00
Richard Frith-Macdonald
7245156336 Add sup[port for 64bit time transitions 2021-07-22 10:33:49 +01:00
Frederik Seiffert
0582eddd96 Export string constants and annotate exported function implementations
Moves scattered string constants to externs.m, and removes obsolete code replacing constant strings.
2021-03-27 17:36:15 +01:00
Gregory John Casamento
753c907938 Fix address for FSF and License name in all headers in base 2019-12-09 18:36:00 -05:00
Richard Frith-Macdonald
cb2998641e another tweak to avoid a compiler warning ... let the compiler know that the
hour cannot exceed 23
2019-01-17 15:20:48 +00:00
Richard Frith-Macdonald
bc72e05f93 Use unsigned integers to suppress spurious compiler warning. 2019-01-17 15:01:08 +00:00
Richard Frith-Macdonald
c1f96a1cf4 Simplify locking for time zones 2018-03-27 10:37:53 +01:00
Richard Frith-Macdonald
c9a1d39055 Fix potential buffer overrun 2018-02-09 08:32:22 +00:00
Richard Frith-Macdonald
54bf6598ed make sure the hour we read from the time zone file is constrained to 0-23 2018-02-04 11:21:47 +00:00
Richard Frith-Macdonald
dcd3b8c5a9 fix possible error with negative time zone offset. 2018-01-31 14:31:37 +00:00
Richard Frith-Macdonald
f319725536 copying the local time zone just, returns it 2017-12-19 11:42:53 +00:00
Richard Frith-MacDonald
d40d219015 removal of garbage collection
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39608 72102866-910b-0410-8b05-ffd578937521
2016-03-25 11:15:28 +00:00
Richard Frith-MacDonald
a2ed652ca2 consistency fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39547 72102866-910b-0410-8b05-ffd578937521
2016-03-15 18:22:57 +00:00
Richard Frith-MacDonald
a0c97c1ddd deprecate confusing extension in favour of simpler ARC-complient method
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39520 72102866-910b-0410-8b05-ffd578937521
2016-03-10 16:50:41 +00:00
Richard Frith-MacDonald
62d2bcbabc changes for use of _WIN32 define on windows
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39492 72102866-910b-0410-8b05-ffd578937521
2016-03-09 13:16:16 +00:00
Richard Frith-MacDonald
70749467e1 Improve absolute time zone caching
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38465 72102866-910b-0410-8b05-ffd578937521
2015-04-28 16:47:54 +00:00
Richard Frith-MacDonald
01e9c92d9e imor fixup for systems without nstzfile.h
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38258 72102866-910b-0410-8b05-ffd578937521
2014-12-23 14:36:02 +00:00
Richard Frith-MacDonald
629f28cd7e fix for NT/windows detection
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37572 72102866-910b-0410-8b05-ffd578937521
2014-01-11 08:09:39 +00:00
Richard Frith-MacDonald
18c8dcfbf9 fix NSTimeZone hash
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37312 72102866-910b-0410-8b05-ffd578937521
2013-10-29 07:03:29 +00:00
Richard Frith-MacDonald
96a87db548 bugfix for byte swapping
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37196 72102866-910b-0410-8b05-ffd578937521
2013-10-04 08:07:10 +00:00
Richard Frith-MacDonald
4381b10267 Tweaks for leack checking at exit
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37008 72102866-910b-0410-8b05-ffd578937521
2013-08-22 19:55:03 +00:00
Richard Frith-MacDonald
ed09c55959 leak detection improvements
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37003 72102866-910b-0410-8b05-ffd578937521
2013-08-22 15:44:54 +00:00
Richard Frith-MacDonald
e928688e01 fix error in zone directory name
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36934 72102866-910b-0410-8b05-ffd578937521
2013-07-26 10:44:49 +00:00
Richard Frith-MacDonald
b2d5fd280c Changes for 64bit clean printf format strings.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36810 72102866-910b-0410-8b05-ffd578937521
2013-07-03 06:46:41 +00:00
Luboš Doležel
b1863cff1d * Source/NSTimeZone.m
Implement nextDaylightSavingTimeTransitionAfterDate:


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36709 72102866-910b-0410-8b05-ffd578937521
2013-06-08 19:02:10 +00:00
Richard Frith-MacDonald
e2d806f6a3 make clearer when we are using windows TRUE/FALSE
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36367 72102866-910b-0410-8b05-ffd578937521
2013-03-16 08:07:17 +00:00
Richard Frith-MacDonald
0be505308d simplification, including use of strtoull() everywhere
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35503 72102866-910b-0410-8b05-ffd578937521
2012-09-03 13:36:45 +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
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
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
Richard Frith-MacDonald
523366101e 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
Fred Kiefer
549d78e403 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
Riccardo Mottola
3c2c5dee35 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
Richard Frith-MacDonald
635bd46437 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
Richard Frith-MacDonald
d522034e22 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
Richard Frith-MacDonald
30faeb91f9 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
Richard Frith-MacDonald
ba24ce0841 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
David Chisnall
7764740bdc 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
Richard Frith-MacDonald
b1b5714169 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
Richard Frith-MacDonald
9810a1ec9c a few more static analyser tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32517 72102866-910b-0410-8b05-ffd578937521
2011-03-09 12:40:50 +00:00
Richard Frith-MacDonald
218582e63c more bsd tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32485 72102866-910b-0410-8b05-ffd578937521
2011-03-07 15:34:06 +00:00
Richard Frith-MacDonald
d18e29dde8 avoid compiler warnings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32417 72102866-910b-0410-8b05-ffd578937521
2011-02-28 19:49:57 +00:00