Commit Graph

597 Commits

Author SHA1 Message Date
Jonas Maebe
157e5eb02e * fixed debug code for 64 bit
git-svn-id: trunk@5913 -
2007-01-12 09:12:13 +00:00
micha
702685717f * cleanup of rtlevents, remove startwait due to persistance guarantee
git-svn-id: trunk@5854 -
2007-01-08 19:11:07 +00:00
marco
779b33148c * fix
git-svn-id: trunk@5769 -
2006-12-31 16:21:19 +00:00
Jonas Maebe
bdfd3e5453 * patch from Lloyd B. Park to support persistent signals
for RTLEvent under unix

git-svn-id: trunk@5750 -
2006-12-30 17:28:10 +00:00
chrivers
6a34534c2d * Removed "platform" keyword from dladdr(), since it actually IS portable.
git-svn-id: trunk@5718 -
2006-12-26 17:06:42 +00:00
chrivers
b8e514c466 * Cleaned up keyword-case style ("FUnction" => "function", etc)
git-svn-id: trunk@5707 -
2006-12-25 12:37:26 +00:00
chrivers
9fa75157ce + Added MAP_FAILED const for all unix platforms
git-svn-id: trunk@5705 -
2006-12-25 12:23:28 +00:00
chrivers
ed72c61524 + Added dl_info record
+ Added dladdr() prototype
 + Added RTLD_DEFAULT const for BSD and LINUX
 + Added RTLD_NEXT for all platforms

git-svn-id: trunk@5704 -
2006-12-25 12:22:19 +00:00
Jonas Maebe
652d331922 * fixed 64 bit compilation
git-svn-id: trunk@5680 -
2006-12-22 16:50:09 +00:00
Jonas Maebe
cf4b3f2e4d * don't destroy fsem in tthread.destroy before its potential last use
git-svn-id: trunk@5678 -
2006-12-22 14:53:54 +00:00
Jonas Maebe
4cbbfd7f5c * set FSuspended also if a tthread is suspended by an external thread
on unix
  * fixed some dataraces in unix' suspend/resume (although they can't
    be solved completely due to no possibility to atomically
    suspend/resume and set fsuspended at the same time)

git-svn-id: trunk@5677 -
2006-12-22 14:49:49 +00:00
Jonas Maebe
1867a46f34 - disabled fix for mantis 6693 from r5662 since the fix itself also
contains a race condition

git-svn-id: trunk@5670 -
2006-12-21 23:11:35 +00:00
Jonas Maebe
96b379ab0b * fixed initial suspending bug in r5662
git-svn-id: trunk@5668 -
2006-12-21 21:51:41 +00:00
Jonas Maebe
0c3afc0cf4 + implementation of cSemaphore* and BasicRTLEvent based on
sem_open/sem_close for Darwin (doesn't have sem_init/sem_destroy)
  + implementation of cSemaphore* based on pipes (for potential future
    systems that don't have either sem* routines)
  + test for basicrtlevent
  * fixed datarace whereby a TThread could be started, run and exit before
    TThread.AfterConstructor had been called (Mantis 6693, all platforms)
  * throw EThread exceptions in TThread.create if something during creating
    the tthread goes wrong (*nix)
  * don't crash in TThread.Destroy if the TThread throws an exception before
    it was fully initialised (*nix)
  * changed order of operations in TThread.Destroy so it doesn't perform
    invalid thread operations in some edge cases (*nix)
  * fixed usage of sem_wait/sem_trywait (can be interrupted) in Semaphore
    and RTLEvent implementations
  * fixed erroneous waiting for threads after they had already exited via
    pthread_detach/pthread_exit
  * fixed several memory leaks in case of thread intialisation errors
    (*nix)
  * unified tthread.inc for all Unices

git-svn-id: trunk@5662 -
2006-12-21 18:22:47 +00:00
michael
fa28889633 * Reverted dependency on fgl generics unit. fgl itself remains untouched.
git-svn-id: trunk@5651 -
2006-12-19 19:53:21 +00:00
micha
b1c1b6fd3d + generic implementation of list and map; adapt TList/TStringList to use it
git-svn-id: trunk@5624 -
2006-12-17 15:52:42 +00:00
Jonas Maebe
87a4372d7f * enable vfork for solaris
git-svn-id: trunk@5557 -
2006-12-08 10:20:38 +00:00
daniel
598cf9fcf0 + Add shortstring version of system().
git-svn-id: trunk@5495 -
2006-11-26 18:40:19 +00:00
michael
285e02ba83 * Fix to be able to allocate threadvars when code outside FPC creates a thread
git-svn-id: trunk@5474 -
2006-11-25 14:53:53 +00:00
daniel
76cf70bdbd * Use proper critical sections.
- Remove sysutils dependency by turning exception into runerror, which is
    converted into exception anyway if user decides to use sysutils.

git-svn-id: trunk@5471 -
2006-11-25 07:32:36 +00:00
Jonas Maebe
eb411035eb * fixed range errors
git-svn-id: trunk@5315 -
2006-11-10 20:45:59 +00:00
daniel
610cf1e2da * Fix reversed home/end.
git-svn-id: trunk@5297 -
2006-11-09 14:47:43 +00:00
Jonas Maebe
edafc80d8c * use pthread_kill() for Suspend/Resume in cthreads
git-svn-id: trunk@5280 -
2006-11-07 21:40:58 +00:00
Jonas Maebe
4240479f5d * fixed datarace in CBeginThread
git-svn-id: trunk@5274 -
2006-11-07 14:05:09 +00:00
marco
ed5e73b9a3 * reenabled the old getdir code when fpgetcwd was not FPC_USE_LIBC. getcwd
syscalls can fail, specially on special file systems.

git-svn-id: trunk@5262 -
2006-11-05 22:03:37 +00:00
micha
0043aff24d * fix linux/sysutils 64 bit file handling: make off_t 64 bit
git-svn-id: trunk@5152 -
2006-11-01 16:32:12 +00:00
Jonas Maebe
e4acf70c58 * fixed fplseek declaration for linux
git-svn-id: trunk@5145 -
2006-11-01 12:32:40 +00:00
micha
9238003e4f + 64 bit file support for linux
git-svn-id: trunk@5116 -
2006-10-31 11:20:21 +00:00
florian
4626f2c489 * NetBSD rtl compiles again
git-svn-id: trunk@5049 -
2006-10-28 22:17:49 +00:00
marco
dd7f715405 * FreeBSD fixes
git-svn-id: trunk@4994 -
2006-10-21 13:16:56 +00:00
daniel
ce3bfabfe6 - Remove unused sysutils dependency.
git-svn-id: trunk@4965 -
2006-10-18 20:10:02 +00:00
marco
449ba0b47b * reverted march fix from Florian that stops exporting pthread* types.
git-svn-id: trunk@4926 -
2006-10-15 15:20:57 +00:00
Almindor
2ee7e64a4a * adds semaphore support to ThreadManager, removes pipe hack from non linux
+ adds SemaphoreInit, SemaphorePost, SemaphoreWait and SemaphoreDestroy to TM

git-svn-id: trunk@4900 -
2006-10-14 11:39:47 +00:00
marco
94e0b66d0a * fix for popen brokenness
git-svn-id: trunk@4894 -
2006-10-13 22:29:08 +00:00
micha
0c5124c295 * fix compilation of sysutils, partly revert patch from peter which was a modified version of my patch
git-svn-id: trunk@4863 -
2006-10-11 18:19:06 +00:00
peter
d9bcee0cbe * don't allocate unixfinddata if we search only one file, patch from neli
git-svn-id: trunk@4855 -
2006-10-11 07:04:45 +00:00
Almindor
d107c6649c * fixes a findfirst bug (thanks to jesusrmx)
git-svn-id: trunk@4807 -
2006-10-05 20:28:53 +00:00
micha
d704af7216 fix compilation for {$T+} linux/win
git-svn-id: trunk@4794 -
2006-10-04 20:43:55 +00:00
Almindor
57d5ce9713 * some unix changes mainly on freeBSD and fix to MAXPATHLEN constant
+ added kld* syscalls for freeBSD (tested)
  + changed "directives" macro for freeBSD unit to "extdecl" for Lazarus
  + changed MAXPATHLEN from 255 (wrong on all unices known to fpc since 1993) to 1024 for non-linux and 4096 for linux as per source code (2.4+ for linux, 1993 BSD for BSDs, Solaris 10)

git-svn-id: trunk@4779 -
2006-10-03 20:35:07 +00:00
peter
25fe773e25 * FindFirst/FindNext replaced with optimized versions based on the
code in the dos unit.

git-svn-id: trunk@4772 -
2006-10-02 21:06:50 +00:00
ivost
23e1ebb357 -ctypes cleanup, it was quite a mess with naming conventions, eg. some times shortened long to l like cldouble
-long is written out now, while signed and unsigned are shortened to s and u

git-svn-id: trunk@4647 -
2006-09-18 21:41:08 +00:00
florian
78d5ba9ff0 * extended ctypes by Aison
git-svn-id: trunk@4622 -
2006-09-15 21:03:50 +00:00
Jonas Maebe
7522d8d967 * fixed sparc alignment issues with popen/pclose
git-svn-id: trunk@4346 -
2006-08-04 13:07:01 +00:00
Jonas Maebe
2b98aa8005 + CODESET for solaris
git-svn-id: trunk@4335 -
2006-08-03 15:36:13 +00:00
micha
d0e0ef3d8c 2.0.4: pthread_cond_timedwait needs absolute time (from crossbuilder, issue #7196)
git-svn-id: trunk@4296 -
2006-07-25 20:34:20 +00:00
daniel
e357dc5cf0 + Add rxvt keyboard sequences by Micha
git-svn-id: trunk@4268 -
2006-07-20 21:28:05 +00:00
michael
497abf8f5d + Several improvements by Martin Schreiber
git-svn-id: trunk@4246 -
2006-07-17 19:52:00 +00:00
Jonas Maebe
9e801eb048 * removed/conditionalised several unused variables
git-svn-id: trunk@4199 -
2006-07-14 20:44:57 +00:00
florian
e92cc059a7 * fixed previous commit
git-svn-id: trunk@3949 -
2006-06-25 20:37:14 +00:00
florian
f32b1ccbe0 + cwstring multithreading safe, fixes #6873
git-svn-id: trunk@3948 -
2006-06-25 20:17:32 +00:00