Commit graph

57 commits

Author SHA1 Message Date
Richard Frith-Macdonald
ea9aa71eeb Avoid compiler warnings on system with pseudo-blocks 2020-12-07 07:23:30 -05:00
Richard Frith-Macdonald
ba5b950fa5 fix retain/release error 2020-10-11 11:24:49 +01:00
Richard Frith-Macdonald
21839365a9 Remove unnecessary retain/release 2020-09-30 10:08:36 +01:00
Richard Frith-Macdonald
98dfa140ec added autorelease pool around each operation to catch any autoreleased
objects produced by the operation being executed. This should prevent
objects living until the end of the thread.
2020-09-30 09:56:24 +01:00
Richard Frith-Macdonald
41badcb417 Fix leak of new operation in -blockOperationWithBlock: method. Make -addExecutionBlock: ensure it works with an on-heap copy of its argument. Tidy code to have NSBlockOperation methods with normal formatting and alphabetical order. Tidy code to use standard macros for memory management. 2020-06-05 17:43:46 +01:00
Richard Frith-Macdonald
6d714c8ee1 Fix for Deadlock in NSOperationQueue #49: If an exception occurs when trying to detach thread, catch it and log it so that locking is not broken by the exception breaking out of the lock protected region. 2020-04-16 22:48:25 +01:00
Frederik Seiffert
cc56c9cc97 Fixed NSOperation completion block memory mgmt. 2020-04-09 09:24:43 +02: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
Fred Kiefer
ec63f314a4
Merge pull request #64 from triplef/fix-nsoperation-kvo
Fixed NSOperation calling removeObserver more than once.
2019-08-14 17:40:48 +02:00
Frederik Seiffert
ae10f58dc4 Fixed NSOperation calling removeObserver more than once.
This would cause an error if/when -removeObserver:forKeyPath: is implemented to throw an error when unregistering non-registered observers.
2019-08-12 19:30:51 +02:00
Gregory John Casamento
2743a4e3fb Implement fred's suggestions 2019-08-06 10:04:17 -04:00
Gregory John Casamento
8d35169311 Eliminate redundant _internal variable 2019-08-05 00:00:55 -04:00
Gregory John Casamento
54b86e303b Fix issue with earlier versions of clang 2019-08-04 23:26:41 -04:00
Gregory John Casamento
2553b6d56d Add addOperationWithBlock: to NSOperationQueue 2019-08-02 13:29:42 -04:00
Gregory John Casamento
88dd60a8fc Complete code for NSBlockOperation, need to write tests 2019-08-02 05:20:59 -04:00
fredkiefer
d774dda8a7 * Source/GSXML.m (fatalErrorFunction): Use correct function to get
line number.
* Source/NSOperation.m (_execute): Surround with NS_DURING to free
lock on error.
2019-07-01 22:58:55 +02:00
Richard Frith-Macdonald
7380e850e4 minor whitespace tidyups 2018-12-04 11:09:18 +00:00
Richard Frith-Macdonald
43673452a5 locking debug/performance tweaks 2018-03-26 15:05:01 +01:00
Richard Frith-MacDonald
c6b8f4fb03 fix memory leak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40433 72102866-910b-0410-8b05-ffd578937521
2017-04-03 20:23:31 +00:00
Richard Frith-MacDonald
9188a050ef fix for bug #47926
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40007 72102866-910b-0410-8b05-ffd578937521
2016-07-18 09:51:35 +00:00
Richard Frith-MacDonald
1ed4da510b Locking simplifications
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39958 72102866-910b-0410-8b05-ffd578937521
2016-07-02 18:56:02 +00:00
Richard Frith-MacDonald
0c7237ec08 s390x portability fixes
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39901 72102866-910b-0410-8b05-ffd578937521
2016-06-22 07:54:16 +00:00
Richard Frith-MacDonald
21d242b151 Fix retain/release error which caused a crash on removal of an old operation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39877 72102866-910b-0410-8b05-ffd578937521
2016-06-19 07:37:58 +00:00
Richard Frith-MacDonald
4a6d6225b9 tidied
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39738 72102866-910b-0410-8b05-ffd578937521
2016-05-10 17:03:02 +00:00
Richard Frith-MacDonald
00571cd74e fix potential deadlock
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38951 72102866-910b-0410-8b05-ffd578937521
2015-08-30 06:40:40 +00:00
Richard Frith-MacDonald
58f05fde30 Fix for logic of 'executing' state by Fred
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37763 72102866-910b-0410-8b05-ffd578937521
2014-03-25 10:29:35 +00:00
Richard Frith-MacDonald
1bd5683eea avoid needing to initialise main operation queue in main thread
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@37555 72102866-910b-0410-8b05-ffd578937521
2014-01-07 16:15:33 +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
da4f7056ca printf style format tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@36799 72102866-910b-0410-8b05-ffd578937521
2013-07-02 15:46:26 +00:00
Niels Grewe
95e88e9a7e Remove leftover debugging statements.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35008 72102866-910b-0410-8b05-ffd578937521
2012-03-27 15:37:52 +00:00
Richard Frith-MacDonald
cd57095d65 get code to compile/link again
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@35004 72102866-910b-0410-8b05-ffd578937521
2012-03-27 10:03:40 +00:00
Niels Grewe
132de12a73 Add completion block support to NSOperation.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@34996 72102866-910b-0410-8b05-ffd578937521
2012-03-26 14:47:07 +00:00
Richard Frith-MacDonald
9be686a44a remove unused variables
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32466 72102866-910b-0410-8b05-ffd578937521
2011-03-05 18:20:37 +00:00
Richard Frith-MacDonald
05beb8f194 fix premature release
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32453 72102866-910b-0410-8b05-ffd578937521
2011-03-05 06:11:50 +00:00
Richard Frith-MacDonald
e0a2640d15 re-introduce thread pool
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32442 72102866-910b-0410-8b05-ffd578937521
2011-03-03 15:14:29 +00:00
Richard Frith-MacDonald
db78d4cd8e Add support for 'concurrent' NSOperations, but remove the pools of theads and
and run normal operations each in their own until we re-instate pools.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32440 72102866-910b-0410-8b05-ffd578937521
2011-03-03 10:56:47 +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
Richard Frith-MacDonald
93f1f36168 fix typo in comment
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32393 72102866-910b-0410-8b05-ffd578937521
2011-02-27 22:44:16 +00:00
Richard Frith-MacDonald
f03e839d7c tweak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32392 72102866-910b-0410-8b05-ffd578937521
2011-02-27 22:37:52 +00:00
Richard Frith-MacDonald
2222fdeb16 Banlu Kemiyatorn <object@gmail.com> ... fix error checking condition for dependencies
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32391 72102866-910b-0410-8b05-ffd578937521
2011-02-27 22:36:22 +00:00
Richard Frith-MacDonald
51cf9b9cf9 Reapply some changes with modifications
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32074 72102866-910b-0410-8b05-ffd578937521
2011-02-11 14:07:49 +00:00
Richard Frith-MacDonald
6b3e53917e inon-fragile ivar update
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29780 72102866-910b-0410-8b05-ffd578937521
2010-02-26 11:04:14 +00:00
Richard Frith-MacDonald
e43d625338 improve instance variable hiding
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29779 72102866-910b-0410-8b05-ffd578937521
2010-02-26 10:25:35 +00:00
Richard Frith-MacDonald
7cc69dfaae Simplify header inclusion
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29669 72102866-910b-0410-8b05-ffd578937521
2010-02-19 08:12:46 +00:00
Richard Frith-MacDonald
85760d2563 move a bit more stuff into additions
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29666 72102866-910b-0410-8b05-ffd578937521
2010-02-18 16:18:54 +00:00
Richard Frith-MacDonald
21d597e740 merge back reorganisation branch
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29615 72102866-910b-0410-8b05-ffd578937521
2010-02-14 10:48:10 +00:00
Riccardo Mottola
adecb6d9fe Move declaration upwards to fix compile error
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29519 72102866-910b-0410-8b05-ffd578937521
2010-02-09 08:08:26 +00:00
Richard Frith-MacDonald
6c84f23ae1 Coimplete operation queue implementation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29508 72102866-910b-0410-8b05-ffd578937521
2010-02-08 10:34:27 +00:00
Richard Frith-MacDonald
0dec7f1b97 NSOperationQueue additions
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29495 72102866-910b-0410-8b05-ffd578937521
2010-02-06 17:10:16 +00:00
Richard Frith-MacDonald
9f98d4c443 tweak for OSX compatibility
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29480 72102866-910b-0410-8b05-ffd578937521
2010-02-05 11:41:24 +00:00