Commit Graph

59 Commits

Author SHA1 Message Date
Michaël Van Canneyt
9000f8742d * Fix error in TReadr.ReadString. Fixes issue #40652 2024-02-18 10:44:20 +01:00
Michaël Van Canneyt
6edfaed0ac * Fix signature of TReader.SetName 2024-02-16 14:12:56 +01:00
Michaël Van Canneyt
689fae7dd9 * Add TReader.ReadStr for Delphi compatibility 2024-02-16 12:07:45 +01:00
Michaël Van Canneyt
d51a0c6b3c * Forgot to commit. 2024-02-16 11:45:16 +01:00
Michaël Van Canneyt
7506277dc1 * Add TReader.SetName for Delphi compatibility 2024-02-14 18:02:45 +01:00
Michaël Van Canneyt
9b9623b289 * Fix wince/nativent compilation 2023-11-09 11:09:07 +01:00
Michaël Van Canneyt
b9ef7416f0 * Fix wrong typecast 2023-11-08 14:17:55 +01:00
Michaël Van Canneyt
14e9446c08 * Add ReadDouble 2023-11-08 12:04:53 +01:00
Michaël Van Canneyt
386f31ef4c * Add TReader.ReadPrefix for Delphi compatibility 2023-11-08 11:56:12 +01:00
Michaël Van Canneyt
54d692c7d6 * Add SkipValue to TReader 2023-11-08 11:50:49 +01:00
Michaël Van Canneyt
972b5181eb * Delta stream support 2023-11-08 11:27:21 +01:00
Michaël Van Canneyt
08821f9422 * Fix issue #40180 2023-10-13 17:19:36 +02:00
florian
c48c816e49 * (modified) patch by Jinyang He to handle alignment in FindInFieldTable correctly, resolves #40400 2023-08-15 23:31:33 +02:00
Michael VAN CANNEYT
ccfa38c68e * Dotted RTL compiles 2023-07-27 19:04:03 +02:00
Michael VAN CANNEYT
68db04d89e * Adapt classes to Unicode RTL : Give string/char correct type depending on case 2023-07-24 15:37:51 +02:00
Michael VAN CANNEYT
98cdab5200 * Add MainUnit 2023-07-14 17:26:10 +02:00
Michael VAN CANNEYT
d23fa5a87f * Char -> AnsiChar 2023-07-14 17:26:10 +02:00
mattias
e8546a9e41 rtl: classes: added parameter aName to TFindComponentClassExEvent 2023-04-13 15:33:38 +02:00
mattias
fdea66d217 rtl: added TBinaryObjectReader.BeginComponent 2023-01-15 10:56:58 +01:00
mattias
c1f3960388 rtl: added overload GetClass(UnitName,ClassName), implemented UnregisterClass, overload TStream.WriteComponent(Instance,WriteUnitName) 2023-01-08 15:46:49 +01:00
mattias
b641c564c6 rtl: TReader: FindComponentClass using field name and classname 2023-01-07 10:19:29 +01:00
Bernd Kreuss
2210143239 fix wording of error message when field not found during reading of lfm file 2021-09-02 11:16:56 +02:00
michael
024714fa20 * Fix non-threading platforms
git-svn-id: trunk@42249 -
2019-06-19 08:10:26 +00:00
michael
ade808cb43 * Patch from Pascal Riekenberg to make component loading thread safe (bug ID 35638)
git-svn-id: trunk@42248 -
2019-06-19 06:25:02 +00:00
michael
a137486439 * Implement flushbuffer abstract method in TFiler (bug ID 33062)
git-svn-id: trunk@38655 -
2018-04-01 07:16:34 +00:00
michael
e160d4c530 * Fix bug ID #32889, handle ReadInterfaceRaw in TReader
git-svn-id: trunk@37856 -
2017-12-29 10:54:14 +00:00
michael
5e40444272 * Free component on error (bug ID 32626)
git-svn-id: trunk@37851 -
2017-12-29 09:37:57 +00:00
svenbarth
530213711f * change the class references in a class' field table to indirect references
git-svn-id: trunk@37482 -
2017-10-17 20:34:21 +00:00
michael
cc81abdd83 * Patch from Michal Gawrycki to implement streaming interface properties (IComponent) Bug ID
git-svn-id: trunk@35474 -
2017-02-22 21:14:35 +00:00
marco
7ef8f00100 * more occured -> occurred spelling fixes.
git-svn-id: trunk@35130 -
2016-12-14 20:05:21 +00:00
yury
7c62aadf65 * Fixed string conversion warnings in RTL.
git-svn-id: trunk@31752 -
2015-09-17 17:25:57 +00:00
michael
910a88122f * Implemented TWriter.WriteSignature/TReader.ReadSignature (bug ID 27519)
git-svn-id: trunk@30367 -
2015-03-29 13:25:12 +00:00
michael
66f711ad09 * Fixed bug ID #26070
git-svn-id: trunk@27767 -
2014-05-11 12:12:12 +00:00
nickysn
015c7e951a * Changed the default packset setting to 1 and disabled the padding of 3-byte
sets to 4 bytes on 16 and 8-bit CPUs. This is compatible with Turbo Pascal 7
  and Delphi 1.

git-svn-id: trunk@27140 -
2014-03-14 23:51:14 +00:00
nickysn
9418fa9b8b * fixed compilation of unit classes with integer=smallint
git-svn-id: trunk@27045 -
2014-03-09 14:21:32 +00:00
Jonas Maebe
5e129b4ac5 * fixed TBinaryObjectReader.ReadSingle(), .ReadCurrency() and .ReadDate():
explicitly typecasting a qword to single/currency/tdatetime is no different
    from assigning it directly, since integer types are assignment-compatible
    with floating point types (mantis #25170)

git-svn-id: trunk@26146 -
2013-11-27 19:59:48 +00:00
nickysn
4953fd0bb0 * use CodePointer in Classes.TReader.FindMethod() and TFindMethodEvent for i8086 medium memory model compatibility
git-svn-id: trunk@25153 -
2013-07-20 22:10:22 +00:00
paul
5a6b6d2c4d rtl: fix loading of long integer values to float properties
git-svn-id: trunk@24947 -
2013-06-23 11:18:25 +00:00
nickysn
730f7c82b7 * some fixes, intended to get units fgl and classes to compile on 16-bit cpus
git-svn-id: trunk@24649 -
2013-05-30 18:58:25 +00:00
sergei
4b5c8bcac2 * Access VMT members using TVmt record instead of pointer manipulations.
* Check FieldTable<>nil before dereferencing. It should be nil if class doesn't have published fields, but currently compiler always generates field table. This produces redundant data and isn't Delphi compatible, therefore it's subject to fix.
* Use ClassNameIs to check the class name instead of doing case-insensitive comparing manually.

git-svn-id: trunk@20305 -
2012-02-11 10:16:50 +00:00
marco
71aa7eaabd * fix from mantis 17818. Value is only peaked, add readvalue to also consume it.
git-svn-id: trunk@16301 -
2010-11-03 20:45:01 +00:00
michael
4d2786d238 * Patch from Luiz americo to use FPList where possible
git-svn-id: trunk@15663 -
2010-07-30 09:06:18 +00:00
marco
805e5a79c6 * writer.writeset, reader.readset as per mantis 10501
git-svn-id: trunk@14200 -
2009-11-16 12:50:18 +00:00
Jonas Maebe
0eec337a00 - removed SUPPORT_UNALIGNED, FPC_SUPPORTS_UNALIGNED and FPC_UNALIGNED_FIXED
defines and ifdefs (already all defined by 2.2.4)

git-svn-id: trunk@13581 -
2009-08-23 07:51:26 +00:00
Jonas Maebe
c943c609bd + support for vaString when reading variant properties
* fixed support for vaUString when reading variant properties (call
    ReadUnicodeString instead of ReadWideString)

git-svn-id: trunk@12853 -
2009-03-02 16:19:45 +00:00
Jonas Maebe
e9fcae46d9 * replaced "tvardata" with "variant" in the interface for streaming
variants (without pulling in the variants unit)

git-svn-id: trunk@12824 -
2009-02-28 17:08:47 +00:00
Jonas Maebe
b95b1cc983 * variants are now stored in a stream as regular values instead of as a
secific variant type
  + support for storing qwords in streams (vaQWord, necessary for varQWord
    support)
  * moved variant serialisation from twriter into tbinaryobjectwriter so
    it can be overridden
   (all further changes for mantis #10482)

git-svn-id: trunk@12820 -
2009-02-28 12:01:18 +00:00
Jonas Maebe
3884a9b065 * initialise temporary variants using fillchar instead of using varclearproc
(the latter assumes the variant has already been initialised at least
     once). Thanks to Yury.

git-svn-id: trunk@12783 -
2009-02-24 09:57:37 +00:00
Jonas Maebe
f1daa9fa73 + added support for streaming basic variant types (boolean, integer types,
floating point types, currency and string types), based on description
    by Anton Kavalenka at
    http://wiki.freepascal.org/FPC_Cleanroom#Variant_streaming_implementation
    and based on his test program (mantis #10482)

git-svn-id: trunk@12781 -
2009-02-23 21:32:12 +00:00
Jonas Maebe
4bb1d13d83 * fixed reading utf-8 strings from streams (based on patch by Anton
Kavalenka, mantis #13015)

git-svn-id: trunk@12777 -
2009-02-23 14:58:23 +00:00