Commit Graph

170 Commits

Author SHA1 Message Date
michael
9747f7f0cd * Do not allow fileage for directories (15873)
git-svn-id: trunk@17221 -
2011-04-02 10:43:39 +00:00
marco
be98b13554 * fix for 11263, changed fileread and fd_zero to out using $modeswitch.
git-svn-id: trunk@14965 -
2010-03-01 22:35:14 +00:00
marco
8e9a7e14ad * Revised yesterday solution to a more general one. Executeprocess gets
another parameter, a set type with flags, default = []

git-svn-id: trunk@14572 -
2010-01-07 20:49:28 +00:00
Jonas Maebe
722d48c8c2 * only return an error if locking a file fails when the file is already
locked, but not when another error occurs (such as EsysNOLCK, because
    this error may always be returned if the kernel doesn't support
    locking, in which case programs such as fpcmake no longer work on
    such systems)

git-svn-id: trunk@14350 -
2009-12-07 13:30:19 +00:00
michael
01ed4a6745 * Implemented OnBeep to install custom beep handler
git-svn-id: trunk@14254 -
2009-11-22 17:33:56 +00:00
Jonas Maebe
25463000ac * do not mark all found files with Find* as "faHidden" if the search path
starts with './' (mantis #14020)
  * also mark files whose name starts with '.' that are found in subdirectories
    as faHidden (not reported, but was due to a similar error)
  - removed some unused variables related to the Find* functionality

git-svn-id: trunk@13307 -
2009-06-21 10:21:06 +00:00
michael
9538da64f9 * Change so that when FindFirst initially returns nonzero, FindClose is no longer needed (Windows compatible)
git-svn-id: trunk@13209 -
2009-05-29 07:24:02 +00:00
Jonas Maebe
f6d452c2c0 * remove the RTL's installed signal handlers at the end of the system
unit's initialization code in case we're in a library
  + implemented InquireSignal(), AbandonSignalHandler(), HookSignal() and
    UnhookSignal() in the sysutils unit
  * for Kylix compatibility, these routines support operating on
    SIGINT and SIGQUIT as well, although they are not hooked by default
    by FPC. The run time errors/exception codes for these signals are
    resp. 217 and 233 (same as in Kylix; I changed ENoWideStringSupport
    to 234).
  * changed the BSD syscall version of fpsigaction to use pointer
    rather than "var" arguments (compatible with other targets, and
    required to be able to pass nil arguments inside the system unit)
  -> together fixes mantis #12704

git-svn-id: trunk@13077 -
2009-05-02 09:40:44 +00:00
Jonas Maebe
99a02a93ca * also consider the search attributes for findfirst if the name does
not contain wildcards + test
  * don't return true from FindGetFileInfo if the file name is ok, but the
    search attributes don't match (resulted in returning multiple times the
    name of the previous entry that did fulfill all requirements)

git-svn-id: trunk@13074 -
2009-05-01 16:03:56 +00:00
Jonas Maebe
8b53f8c41a * fixed a bunch of cases where ESysEINTR wasn't handled
git-svn-id: trunk@12924 -
2009-03-19 21:46:12 +00:00
Jonas Maebe
f7003119d0 * fixed AddDisk() in sysutils and dos units, and fixed memory leaks
related to this functionality, based on analysis/patch by Michael
    Kamburelis (mantis #9985)

git-svn-id: trunk@12814 -
2009-02-27 22:02:24 +00:00
florian
475cd9926d * couple of small haiku fixes by Olivier Coursiere
git-svn-id: trunk@12739 -
2009-02-14 10:36:12 +00:00
Jonas Maebe
6f12cb03db * if no locking is specified, also request an exclusive lock for solaris
in case the file is opened as read/write (instead of only if opened as
    write-only)

git-svn-id: trunk@12685 -
2009-02-04 11:41:18 +00:00
Jonas Maebe
78f6e5ff6e * fixed fmShareDenyNone for Solaris
git-svn-id: trunk@12684 -
2009-02-04 10:13:46 +00:00
Jonas Maebe
6581c8dec5 * hopefully final fix to unix locking: specifying no locking mode again
means "exclusive lock" where supported (not on Solaris when opening
    a file in read-only mode)

git-svn-id: trunk@12675 -
2009-02-03 13:34:56 +00:00
Jonas Maebe
f9556bad39 * fixed ESysEIntr checking for fpflock
git-svn-id: trunk@12635 -
2009-01-31 21:12:17 +00:00
Jonas Maebe
4a829da2fc * fixed fileopen when not specifying any sharing (should not perform any
locking at all) (= fmShareCompat, as that one is 0)
  * fixed test for this change (and for fmShareDenyNone)

git-svn-id: trunk@12634 -
2009-01-31 18:46:11 +00:00
Jonas Maebe
9fabb0b127 * fixed file locking of files opened as read- or write-only on solaris
(locking is based on fcntl there, and that one cannot create an
     exclusive lock for a read-only file or a shared lock for a write-only
     file)

git-svn-id: trunk@12633 -
2009-01-31 18:11:58 +00:00
Jonas Maebe
57ff980bc3 * hopefully fixed beos compilation after r12630 (it doesn't have flock)
git-svn-id: trunk@12631 -
2009-01-30 16:09:08 +00:00
Jonas Maebe
a730ee7f10 + support for file locking for *nix systems based on flock (mantis #13012)
git-svn-id: trunk@12630 -
2009-01-30 15:08:30 +00:00
marco
52bb5ac229 * removed some old 1.0.x ->2.0.x transitional code (executeprocess)
git-svn-id: trunk@12238 -
2008-11-26 23:08:17 +00:00
michael
7a058a9bf2 * Added overloaded call for fplstat which has var argument (as for stat)
* Implemented support for faSymlink, as per 9915

git-svn-id: trunk@11681 -
2008-09-01 09:17:58 +00:00
joost
acff7f60bd * Add path-delimiters properly in GetAppConfigDir and GetAppConfigFile
git-svn-id: trunk@11384 -
2008-07-15 13:12:42 +00:00
Almindor
6433f8c38b * fix DiskFree and DiskSize to check for Drive argument
git-svn-id: trunk@11226 -
2008-06-14 11:19:51 +00:00
michael
26575472b6 * Added GetUSerDir function (ID 11338)
git-svn-id: trunk@11074 -
2008-05-24 11:50:26 +00:00
micha
83b7f81f81 + add no-fpu support to compiler/rtl for powerpc-linux (-Cfnone)
git-svn-id: trunk@10422 -
2008-03-02 12:59:02 +00:00
peter
95d0ce1270 * VendorName function added to allow an extra subdirectory
to group multiple products
  * OnGetVendorName hook, like OnGetApplicationName
  * use COMMON_APPPATH for global config files under windows

git-svn-id: trunk@10072 -
2008-01-27 21:40:55 +00:00
marco
827d380691 * pchar(pointer()) isms that were safe.
git-svn-id: trunk@8672 -
2007-09-28 21:57:45 +00:00
daniel
5acd85f447 * Revert 6964
git-svn-id: trunk@7000 -
2007-03-25 17:55:47 +00:00
daniel
8127fb7a05 * Switch to classic field names to prevent further messing with compatibility.
git-svn-id: trunk@6964 -
2007-03-23 22:35:12 +00:00
Jonas Maebe
95474a2d38 * fixed memory leak in executeprocess for FPC_USE_FPEXEC
git-svn-id: trunk@6826 -
2007-03-13 18:54:27 +00:00
Tomas Hajny
b06b453ee1 * check for 64-bit support in FileTruncate based on TOff definition
git-svn-id: trunk@6746 -
2007-03-06 20:33:28 +00:00
Jonas Maebe
6a7321c318 * enabled 64 bit filetruncate
git-svn-id: trunk@6739 -
2007-03-06 10:17:03 +00:00
peter
7fb4c0675a * fixed compile error
git-svn-id: trunk@6732 -
2007-03-06 07:13:20 +00:00
Tomas Hajny
5e1a7997ee + FileTruncate allows 64-bit parameter
git-svn-id: trunk@6727 -
2007-03-05 23:47:10 +00:00
michael
ea0fc335d1 * Fixed FileExists for >2GB files
git-svn-id: trunk@5929 -
2007-01-12 19:36:24 +00:00
Jonas Maebe
87a4372d7f * enable vfork for solaris
git-svn-id: trunk@5557 -
2006-12-08 10:20:38 +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
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
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
michael
dc0e8428a6 + Fixed rights parameter in TFileStream.Create and FileCreate
git-svn-id: trunk@3862 -
2006-06-13 22:01:49 +00:00
michael
e73bc0b772 + Made AddDisk a function, returning the current number of drives.
git-svn-id: trunk@3816 -
2006-06-06 20:54:21 +00:00
michael
305e4142ff + Fixed FileGetAttr so hidden is correctly detected
git-svn-id: trunk@3790 -
2006-06-04 14:18:55 +00:00
Tomas Hajny
a9b515c0bf * fexpand defines kept in platform specific sysutils.pp
git-svn-id: trunk@3726 -
2006-05-28 21:29:26 +00:00
peter
da85b3db8c * fix linux build
git-svn-id: trunk@3626 -
2006-05-22 06:57:41 +00:00
Jonas Maebe
5e694a801e * use vfork instead of fork for popen and one variant of executeprocess
if USE_VFORK is defined (currently only if both BSD and FPC_USE_LIBC
    are defined). Speeds up the compilation of the compiler under Darwin
    by 20-25% (the larger the project, the bigger the speedup).

git-svn-id: trunk@2317 -
2006-01-21 20:19:19 +00:00
daniel
3758d106fe * remove command about quotes in array version of executeprocess, which doesn't
apply there

git-svn-id: trunk@2080 -
2005-12-30 09:19:23 +00:00
michael
59d3cd95a8 + Patch from Michalis Kamburelis to implement correct config dir, following basedir-spec
git-svn-id: trunk@1719 -
2005-11-10 20:40:11 +00:00
marco
411e2359eb * Fixed 2.0.0 compilation
git-svn-id: trunk@1346 -
2005-10-09 21:29:01 +00:00
marco
f054a6df16 * nanosleep for sleep(), since it is now in the POSIX group.
git-svn-id: trunk@1341 -
2005-10-09 11:41:57 +00:00
florian
ee9862d231 + signal hooking dummies
git-svn-id: trunk@1103 -
2005-09-17 22:21:30 +00:00
florian
b245075bb3 * unix: faSymLink
* unix: TSearchRec.PathOnly

git-svn-id: trunk@1101 -
2005-09-17 20:05:04 +00:00
peter
b0e5f64091 * call uniquestring before calling stringtoppchar
git-svn-id: trunk@709 -
2005-07-20 07:11:55 +00:00
Jonas Maebe
437f35315c * fixed datetime related routines for unix
git-svn-id: trunk@444 -
2005-06-19 14:49:37 +00:00
michael
d2d33c03fb + Added missing FileSetDate call
git-svn-id: trunk@403 -
2005-06-14 11:46:31 +00:00
florian
6992fde8fc * patch from Ales to Katona to change some var parameters to out
parameters

git-svn-id: trunk@292 -
2005-06-09 07:42:40 +00:00
michael
180fd52858 + Reworked GUID creation
git-svn-id: trunk@43 -
2005-05-21 10:03:44 +00:00
fpc
790a4fe2d3 * log and id tags removed
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
michael
99658cf4d6 + Implementation of CreateGUID
git-svn-id: trunk@27 -
2005-05-19 17:31:25 +00:00
fpc
50778076c3 initial import
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
Jonas Maebe
2426ecafc3 * fixed several warnings and notes about unused variables (mainly) or
uninitialised use of variables/function results (a few)
2005-03-25 22:53:39 +00:00
florian
7fef413b69 + SysLocale 2005-02-26 14:38:14 +00:00
peter
e417e34496 * truncate log 2005-02-14 17:13:06 +00:00
michael
9701081657 + Added mode field to TSearchRec for Kylix compatibility 2004-12-19 18:03:29 +00:00
michael
fbb13b5266 + Added GetEnvironmentVariableCount and GetEnvironmentString calls 2004-12-11 11:32:44 +00:00
marco
8d238cd712 * resolution of now increased to ms 2004-11-14 15:10:44 +00:00
marco
139913d009 * getenv had ansistring as param due to {$H+} now shortstring. 2004-11-06 17:24:07 +00:00
marco
07adf4e83d * timezone stuff back to unix 2004-11-02 13:59:42 +00:00
peter
0c80377ca8 * 1.0.x bootstrap fix 2004-11-01 07:10:56 +00:00
olle
4478f72279 * Fix for FPC_USE_LIBC 2004-10-31 22:25:31 +00:00
marco
780ba784d6 * unix interface cleanup 2004-10-30 20:55:54 +00:00
michael
30a74b36f2 + Fixed sleep: file needs to be closed again 2004-10-12 15:22:23 +00:00
michael
dfe2a0417e + Implementation of GetTempDir and GetTempFileName 2004-10-10 10:28:34 +00:00
michael
a0109e4da7 + Give path, not comline in ExecuteProcess 2004-08-30 11:20:39 +00:00
michael
d8501af1df + Fixed ExecuteProcess. Now returns the exit code or raises an exception on failure 2004-08-30 11:13:20 +00:00
michael
6bf44ccc0f Added getappconfig calls 2004-08-05 07:28:37 +00:00
daniel
a1229ff8fe * Modified bootstrap code so separate prt0.as/prt0_10.as files are no
longer necessary
2004-07-03 21:50:30 +00:00
michael
c89660006d + Fixed Globtosearchrec to use unixtowinage 2004-06-15 07:36:03 +00:00
michael
94ed600e1e + Fixed FindFirst/FindNext so it treats the attributes correctly 2004-05-22 14:25:03 +00:00
peter
8c60c6f93e * ordinal-pointer conversions fixed 2004-04-28 20:48:20 +00:00
peter
c17c80def1 * FileIsReadOnly fixed 2004-04-26 14:50:19 +00:00
marco
3896b0fe05 * small fix for NIL arg ptr in first executeprocess 2004-04-20 18:24:32 +00:00
marco
93622ec2e8 * UnixType changes. Please report problems to me. 2004-03-04 22:15:16 +00:00
marco
c2d60c1a8b * Hopefully last large changes to fpexec and friends.
- naming conventions changes from Michael.
	- shell functions get alternative under ifdef.
	- arraystring function moves to unixutil
	- unixutil now regards quotes in stringtoppchar.
	- sysutils/unix get executeprocess(ansi,array of ansi), and
		both executeprocess functions are fixed
 	- Sysutils/win32 get executeprocess(ansi,array of ansi)
2004-02-13 10:50:22 +00:00
marco
75f4e0fea9 * First version of fpexec change. Still under ifdef or silently overloaded 2004-02-12 15:31:06 +00:00
marco
11f9c20d90 * fixed for 1.0 errno->fpgeterrno 2004-02-09 17:11:17 +00:00
michael
dc953332cd + Added fileIsReadOnly 2004-02-08 14:50:51 +00:00
michael
71f7e0928b + Implemented getlastoserror 2004-02-08 11:01:17 +00:00
Tomas Hajny
e0f9297e01 * ExecuteProcess fixes, ProcessID and ThreadID added 2004-01-20 23:05:31 +00:00
michael
67d7dcdc91 + Implemented sleep() on Unix. 2004-01-10 17:34:36 +00:00
florian
0c1fbaeae4 * compilation error fixed 2004-01-05 22:42:35 +00:00
florian
822ce0df68 * changed sysutils.exec to ExecuteProcess 2004-01-05 22:37:15 +00:00
marco
aeaf3e9d2c * Unix exec(ansistring) 2004-01-03 09:09:11 +00:00
michael
de16dcff56 + Some fixes to have everything compile again 2003-11-26 20:34:19 +00:00
marco
0c999e0c9b * threads for FreeBSD. Not working tho 2003-11-17 10:05:51 +00:00
Tomas Hajny
57538cb669 * THandle in sysutils common using System.THandle 2003-10-25 23:42:35 +00:00
marco
cdf26af82b * fix from Vincent to casetables 2003-10-07 08:28:49 +00:00
peter
456025ad0a * fpISxxx macros renamed to C compliant fpS_ISxxx 2003-09-27 12:51:33 +00:00