Commit Graph

41078 Commits

Author SHA1 Message Date
florian
7df123aa1e * insert it statements for arm thumb2 in syscall assembler procedures
git-svn-id: trunk@25342 -
2013-08-23 15:22:38 +00:00
michael
3dd8673212 * Handle EINTR for read/Write operations
git-svn-id: trunk@25341 -
2013-08-23 14:27:23 +00:00
Mattias Gaertner
1e48781694 instantfpc: fixed showing compiler error
git-svn-id: trunk@25340 -
2013-08-23 13:47:07 +00:00
Károly Balogh
add4aa10df don't try to clean unsupported CPU-OS combinations
* greatly enhances clean performance over FSes with limited to no caching (networked file systems (eg. SSHFS), Amiga, etc)
* also an indentation fix

git-svn-id: trunk@25339 -
2013-08-23 13:25:44 +00:00
sergei
bfcdf6b825 * Replaced tai_ent and tai_ent_end classes with tai_directive subtypes. Having separate classes for them is unnecessary complication.
git-svn-id: trunk@25338 -
2013-08-23 12:38:49 +00:00
lacak
b2e7364ae8 fcl-db: bufdataset: improves rev.25333; length indicator is saved only for variable length fields
git-svn-id: trunk@25337 -
2013-08-23 11:56:53 +00:00
sergei
108d3cb090 - Removed tai_label.is_global field, was used in just one place and is generally not needed: binding is controlled by 'bind' property of referenced AsmLabel.
git-svn-id: trunk@25336 -
2013-08-23 11:34:08 +00:00
sergei
b8a76c5da2 - Removed gen_proc_symbol procedure, no longer used, replaced by thlcgobj.gen_proc_symbol method.
git-svn-id: trunk@25335 -
2013-08-23 10:54:57 +00:00
svenbarth
1a3b70960a Add example for connecting to a remote registry on Windows.
git-svn-id: trunk@25334 -
2013-08-23 08:54:25 +00:00
lacak
625a2c18f3 fcl-db: bufdataset: fixes bug when saving of BLOB data using SaveToFile or SaveToStream in dfBinary format.(instead of BLOB data only pointer to "BLOB buffer record" is saved)
Format of saved data is changed as follows:
- Identification (start of file) changes from "BinBufDataset" (OLD version named 1.0) to "BinBufDataSet" (NEW version named 2.0)
- Just after Identification ("BinBufDataSet") is written one byte indicating version (for now it is 20 as 2.0)
- FieldDefs are saved in same format as in OLD format (nothing chages)
- Record header is saved in same format as in OLD format (nothing chages)
- Record data are saved field by field, where each field begins with 4 bytes indicating length of data, followed by data (here is used TField.AsBytes to get actual data)

Backward compatibility is keept in reading OLD format
When saving NEW format is always used

git-svn-id: trunk@25333 -
2013-08-23 08:38:29 +00:00
svenbarth
a298a9ecf8 Implement TRegistry.RegistryConnect for Windows (excluding WinCE).
registry.pp, TRegistry:
  * use FSysData to hold information whether we need to close the RootKey
winrec.inc, TRegistry:
  + add a TWinRegData type that holds the information whether the RootKey was explicitely opened by us
  * SysRegCreate: allocate FSysData as PWinRegData
  * SysRegFree: close the RootKey if necessary and free FSysData
  + RegistryConnect: implement for Win32/Win64; update RootKey only if RegConnectRegistry connects successfully, also the RootKey is now owned by us
  * SetRootKey: update the RootKey only if it differs from previous value (avoids orphaning the key by doing a "reg.RootKey := reg.RootKey") and close the previous RootKey if it was owned by us
  

git-svn-id: trunk@25332 -
2013-08-23 08:22:51 +00:00
Jonas Maebe
ce6e72c341 * define COREVIDEO_SUPPORTS_IOSURFACE for iphonesim platform
git-svn-id: trunk@25331 -
2013-08-22 22:42:12 +00:00
Jonas Maebe
1af312c129 * don't overwrite result of librarysearchpath.FindFile() in
GetDarwinPrtobjName() if it found something

git-svn-id: trunk@25330 -
2013-08-22 21:37:06 +00:00
svenbarth
b57a587842 Fix for Mantis #24903.
ncon.pas, tstringconstnode:
  * buildderefimpl: don't build the deref if we don't need to
  * derefimpl: do not try to resolve the deref if it wasn't stored at all

git-svn-id: trunk@25329 -
2013-08-22 20:18:14 +00:00
Jonas Maebe
528f5d1096 * initialise result of GetDarwinPrtobjName() in case GetDarwinCrt1ObjName()
returns an empty string

git-svn-id: trunk@25328 -
2013-08-22 19:55:57 +00:00
reiniero
e7b833bd1b sqldb: tests: clean up forms so database.ini editor is in main form
git-svn-id: trunk@25327 -
2013-08-22 11:07:39 +00:00
lacak
62857c565e fcl-db: tests: formatting
git-svn-id: trunk@25326 -
2013-08-22 09:57:45 +00:00
Jonas Maebe
4ec9ec2009 + PIC support for Darwin/ARM:
o does not use GOT
   o enabled by default like for other Darwin platforms
  - removed Darwin/ARM call stub support: no longer needed with current
    Xcode versions (at least Xcode 4.2+), and we didn't support PIC
    in them yet

git-svn-id: trunk@25325 -
2013-08-22 08:14:24 +00:00
Jonas Maebe
8ffb704b8c * don't split address labels from the instruction they belong with when
rescheduling (needed for GOT-less PIC)

git-svn-id: trunk@25324 -
2013-08-22 08:14:18 +00:00
Jonas Maebe
b31e5c2536 + PIC support for ARM jump tables (only for plain ARM right now, not
yet for thumb/thumb2)

git-svn-id: trunk@25323 -
2013-08-21 22:28:24 +00:00
Jonas Maebe
d5c86bcfef * created combined (lipo'd) armv6 and armv7 versions
git-svn-id: trunk@25322 -
2013-08-21 22:28:17 +00:00
paul
4ee7b4e7e2 rtl: code refactoring by Inoussa (mantis #0024898)
git-svn-id: trunk@25320 -
2013-08-21 15:44:31 +00:00
svenbarth
5be1a905e8 Fix FindNext for NativeNT.
rtl/nativent/sysutils.pp, FindNext:
* the UNICODE_STRING.Length and the FILE_DIRECTORY_INFORMATION.FileNameLength fields contain the amount of bytes, not the amount of characters, so move the correct amount of bytes

git-svn-id: branches/cpstrrtl@25319 -
2013-08-21 10:24:20 +00:00
Jonas Maebe
936bd3c902 * fixed definitions/uses of asmsymbols: always explicitly define local
symbols as local, don't use RefAsmSymbol for symbols that may still
    be defined/used as local symbols later

git-svn-id: trunk@25318 -
2013-08-21 09:49:07 +00:00
paul
4c23d2281a rtl: fpwidestring:
- retry to load currentMap if it is not assigned
  - add more tests for fpwidestring manager

git-svn-id: trunk@25317 -
2013-08-21 06:56:26 +00:00
paul
2cb8125bfc tests: fix test to use fpwidestring manager (by Inoussa, mantis #0024890)
git-svn-id: trunk@25316 -
2013-08-21 06:35:25 +00:00
paul
d375cc88a1 rtl: apply patch of Inoussa which fixes undefined result of UnicodeToLower and UnicodeToUpper (mantis #0024889)
git-svn-id: trunk@25315 -
2013-08-21 06:32:17 +00:00
lacak
99e67d19cc fcl-db: bufdataset: partialy fixes TestOpeningNonExistingDataset. See also #22030.
git-svn-id: trunk@25314 -
2013-08-20 06:42:09 +00:00
lacak
4237cbcfd8 fcl-db: bufdataset: formatting
git-svn-id: trunk@25313 -
2013-08-20 06:11:06 +00:00
paul
e913ab1f9f rtl: apply patch of Inoussa which drops unicode manager dependency on SysUtils (issue #0024887)
git-svn-id: trunk@25312 -
2013-08-20 04:55:05 +00:00
paul
ec7be0d231 test: add more fpwidestring tests by Inoussa
git-svn-id: trunk@25311 -
2013-08-20 02:52:07 +00:00
Jonas Maebe
40ff1c77ca * updated GetWindowsSpecialDir():string so it uses the -A or -W api call
depending on whether the RTL is compiled in Unicode mode to avoid
    conversions

git-svn-id: branches/cpstrrtl@25310 -
2013-08-19 22:47:19 +00:00
Jonas Maebe
63e8d0c31c * do not yet map GetCommandLine() to GetCommandLineW() with -dFPC_UNICODE_RTL,
because its result is assigned to the global cmdline variable which is still
    a pchar in all cases

git-svn-id: branches/cpstrrtl@25309 -
2013-08-19 22:47:15 +00:00
Jonas Maebe
5b09435055 * explicitly call several windows *A() versions of APIs so the intended
routine is called even when we compile with -dFPC_UNICODE_RTL

git-svn-id: branches/cpstrrtl@25308 -
2013-08-19 22:47:12 +00:00
Jonas Maebe
efa95bed66 * changes so the compiler can be compiled with a unicode RTL without warnings
git-svn-id: branches/cpstrrtl@25307 -
2013-08-19 22:47:07 +00:00
Jonas Maebe
2da7c3f05c * changed declarations in finah.inc and diskh.inc from ansistring to
rawbytestring
  * DoDirSeparators() and GetDirs() marked as "rtlproc" so they can accept
    non-rawbytestring arguments as their var-parameters

git-svn-id: branches/cpstrrtl@25306 -
2013-08-19 22:04:40 +00:00
Jonas Maebe
65ecd1273d * removed warning when GetEnvironmentVariable() does not return a
a unicodestring

git-svn-id: branches/cpstrrtl@25305 -
2013-08-19 22:04:36 +00:00
Jonas Maebe
f9f041d470 * SystemOldNAme -> SystemOldName
git-svn-id: branches/cpstrrtl@25304 -
2013-08-19 22:04:33 +00:00
Jonas Maebe
91079d1327 * ensure that constant string concatenations don't result in converting
input strings to DefaultSystemCodePage

git-svn-id: branches/cpstrrtl@25303 -
2013-08-19 22:04:29 +00:00
Jonas Maebe
af3f12f60c * rawbytestring/unicodestring versions of findfirst/findnext/findclose
o these routines are now generic wrappers in filutil.inc, and call
     the platform-dependent internalfindfirst/next/close routines
   o on unix, the fnmatch routine got proper support for UTF-8 matching
     (e.g., it won't match a partial UTF-8 code point to a "?" wildcard)
   o for NativeNT, a similar (untested) UTF-16 version has been added
  + test for the above
  * rawbytestring/unicodestring versions of fileage

git-svn-id: branches/cpstrrtl@25302 -
2013-08-19 22:04:25 +00:00
Jonas Maebe
df97cd65d9 * don't adjust directory separators in fexpand when we're compiling the
sysutils version, it's already done (in a more efficient way) in
    ExpandFileName() before that routine is called

git-svn-id: branches/cpstrrtl@25301 -
2013-08-19 22:04:19 +00:00
Jonas Maebe
26b7f5a36c * ensure that fexpand(ansistring) never converts its argument to a code page
other than DefaultFileSystemCodePage, so that it can work with strings
    holding any encoding
  + test for fexpand(ansistring) with UTF-8 strings while DefaultSystemCodePage
    is set to CP_ASCII

git-svn-id: branches/cpstrrtl@25300 -
2013-08-19 22:04:15 +00:00
Jonas Maebe
14d62028ff * don't convert ansistrings when calling setcodepage() with a code page
number that means the same as the existing one but is nevertheless
    different (e.g. CP_ACP and the actual value of DefaultSystemCodePage)

git-svn-id: branches/cpstrrtl@25299 -
2013-08-19 22:04:11 +00:00
Jonas Maebe
b115231ea4 * never change the code page of a non-empty string when calling setlength on
it

git-svn-id: branches/cpstrrtl@25298 -
2013-08-19 22:04:07 +00:00
florian
6606955b88 + basic support for pic on arm-linux
git-svn-id: trunk@25297 -
2013-08-19 21:35:37 +00:00
paul
7ac3647ff2 rtl: apply patch of Inoussa with Incremental Implementation of the Unicode Collation Algorithm (mantis #0024873)
git-svn-id: trunk@25296 -
2013-08-19 16:35:12 +00:00
paul
f285948fcb rtl, utils: apply patch of Inoussa:
This patch implements collation'loading at runtime. This reduce the final executable' size as the collation's data are now externaly stored. Note that It requires the external collation files to be shipped and the program to load the collations it needs using the "LoadCollation"/"RegisterCollation" procedure(s).

The external collation files are produced by "cldrparser" (while producing the static files). The root collation "ducet" 's external file is produced by "unihelper".

It is important to note that these files are endian specific :
 * collation_*_be.bco for big endian systems
 * collation_*_le.bco for little endian system.

The root collation should at be registered, be it staticaly by using the "unicodeducet" unit or dynamicaly by making a call sush as RegisterCollation(<collation dir>,'ducet'). 
It is possible, in the same application, to make use of static and dynamic.

git-svn-id: trunk@25295 -
2013-08-19 13:42:11 +00:00
lacak
721d695ae4 fcl-db: base: implements AsBytes for TBlobField
git-svn-id: trunk@25294 -
2013-08-19 12:06:36 +00:00
lacak
9cf1ef90cd fcl-db: base: formatting (char-case)
git-svn-id: trunk@25293 -
2013-08-19 11:43:16 +00:00
nickysn
a1fa1954b8 * i8086 medium model fixes in Tresourcestrings.CreateResourceStringData
git-svn-id: trunk@25292 -
2013-08-18 21:18:22 +00:00