Commit Graph

8443 Commits

Author SHA1 Message Date
marco
cbf7b49dd1 * removed packed from statstg, which causes trouble in win64, and is probably wrong. Mantis 16159
git-svn-id: trunk@15136 -
2010-04-11 11:21:39 +00:00
Tomas Hajny
a87a867271 * fix for exception handling - avoid endless loop in case of fatal exceptions, safer checking for prefetch bug
git-svn-id: trunk@15131 -
2010-04-11 00:37:01 +00:00
Tomas Hajny
e0c8c39d74 * safer handling of video buffer changes, free original screen buffer at termination and initialized screen parameters at start to allow proper working of TProgram based FV programs
git-svn-id: trunk@15129 -
2010-04-11 00:26:03 +00:00
Tomas Hajny
d05b8dbbda * fix long term problem resulting in crashes of FV apps under OS/2
git-svn-id: trunk@15128 -
2010-04-11 00:18:24 +00:00
paul
17687d90ce rtl: minor changes for TStreamAdapter:
- return STG_E_INVALIDPOINTER instead of E_INVLIDARG for Read,Write as msdn requires
  - return STG_E_INVALIDFUNCTION instead of E_INVLIDARG for Seek as msdn requires

git-svn-id: trunk@15127 -
2010-04-10 17:50:29 +00:00
Tomas Hajny
86f1e52505 * compilation fix - CloseThrad typo from r15072
git-svn-id: trunk@15124 -
2010-04-10 08:43:39 +00:00
marco
0ba6c22b28 * fix for Mantis 16195, Delphi compatibility resource handle types were not 64-bit proof.
git-svn-id: trunk@15117 -
2010-04-08 09:03:50 +00:00
michael
bc735a639f * Call specialchars in TStringList constructor
git-svn-id: trunk@15116 -
2010-04-08 06:51:26 +00:00
Jonas Maebe
a18f2594e2 * fixed FloatToStr for ffGeneral when dealing with numbers whose number of
significant digits before the decimal points matches the precision
    parameter exactly (mantis #16188)
  * round instead of cut off digits in FloatToStr with ffGeneral
  * take into account the minus sign when determining whether a number needs
    to be represented using ffExponent instead of ffGeneral because it has
    too many digits

git-svn-id: trunk@15114 -
2010-04-05 14:54:24 +00:00
olivier
45465592c2 - Remove unnecessary char to fix compilation under BeOS.
git-svn-id: trunk@15112 -
2010-04-04 23:23:31 +00:00
micha
87ef559542 * rtl: fix i386-linux uclibc atexit functionality (call exit instead of _exit)
git-svn-id: trunk@15110 -
2010-04-03 13:18:10 +00:00
paul
24d8a7d833 compiler: start implementation of class constructors/destructors: parsing is ready but at the moment neither class constructors nor destructors are called - this is to be implemented
git-svn-id: trunk@15109 -
2010-04-03 09:14:12 +00:00
marco
02069109d1 * haiku also sinlen, Mantis 16176
git-svn-id: trunk@15104 -
2010-04-01 11:38:55 +00:00
olivier
a2d41bbdb9 * Fixes all constant declarations according to sys/socket.h and netinet/in.h.
git-svn-id: trunk@15102 -
2010-03-31 23:25:10 +00:00
olivier
16de86ef7c - Remove unnecessary call to SysInitStdIO probably added here by me for debugging purpose long time ago. The right one is a few line below.
git-svn-id: trunk@15098 -
2010-03-30 20:06:52 +00:00
Jonas Maebe
60f8b7fcb1 + int64 version of randomrange() (mantis #16108)
git-svn-id: trunk@15097 -
2010-03-30 20:04:19 +00:00
marco
6a7bc76ca0 * later SM_ constants for getmetrics mantis 16138
git-svn-id: trunk@15089 -
2010-03-29 11:25:26 +00:00
ivost
a6022f5df2 * removed IImplementorGetter interface and replaced it by the guid IObjectReference.
* GetInterface and GetInterfaceWeak is modified so that when querying for IObjectReference not an interface is returned but the object pointer

git-svn-id: trunk@15087 -
2010-03-28 12:35:50 +00:00
ivost
7025b1ac01 * added supports helper functions for IInterface supports TClass -> TObject,Boolean
git-svn-id: trunk@15086 -
2010-03-28 11:51:38 +00:00
ivost
561997e8ef * added fpc_class_is_corbaintf and fpc_class_cast_corbaintf compiler helper functions
git-svn-id: trunk@15085 -
2010-03-28 11:31:50 +00:00
ivost
d9a6e63ef0 * prepeared compiler functions for IS and cast operators
* IS: fpc_intf_is, fpc_intf_is_class, fpc_class_is_intf
* AS: fpc_intf_cast, fpc_intf_cast_class, fpc_class_cast_intf

git-svn-id: trunk@15084 -
2010-03-28 11:19:56 +00:00
ivost
dc785f6f68 * implemented intf as object. When doing IInterface as TObject the compiler calls fpc_intf_as_class to query for the IImplementorGetter interface and then invokes GetObject to get the
objects reference.
* by default the TInterfacedObject is supporting now IImplementorGetter

git-svn-id: trunk@15080 -
2010-03-28 00:17:20 +00:00
ivost
6560ed87e9 * removed a debug writeln, unfortunately commited by r15077
git-svn-id: trunk@15079 -
2010-03-27 17:06:02 +00:00
ivost
5a588e5f06 * fixed Supports function so that it's using new function GetInterfaceWeak. Supports may have accidentially freed a objects.
git-svn-id: trunk@15078 -
2010-03-27 17:02:09 +00:00
ivost
3b5826059d * Added GetInterfaceWeak to TObject. It's equal to GetInterface but the returned interface is not referenced. This way it's possible to query interfaces of unreferenced objects.
* Changed fpc_class_as_intf so that it uses GetInterfaceWeak instead of GetInterface. This way it's prevented that the AS operator is increasing the refcounter of an unreferenced object from 0 to 1 temporarily and then by decreasing from 1 to 0 the object is freed.

git-svn-id: trunk@15077 -
2010-03-27 17:00:52 +00:00
Jonas Maebe
d5f415b047 * initialise fwritelocked and freadercount in the TMREWS constructor using
atomic operations so that in case it's created while multiple threads are
    already running, all threads are guaranteed to see this initialisation
  * some minor changes to the comments of TMREWS

git-svn-id: trunk@15074 -
2010-03-27 12:44:51 +00:00
ivost
3f2d66b188 * when calling GetInterfaceByStr on COM Objects, the refcounter was not increased
* this bugfix fixes bugreport #0012778

git-svn-id: trunk@15073 -
2010-03-27 11:12:46 +00:00
marco
8cce3d3f91 * closethread thread manager field/function. Mantis 13160
git-svn-id: trunk@15072 -
2010-03-26 23:31:52 +00:00
Jonas Maebe
4ce7fc92a0 + added pthread_mutex_trylock() to fix compilation after r15026
git-svn-id: trunk@15069 -
2010-03-26 09:45:35 +00:00
ivost
c47c125ec0 * changed 0 to S_OK as return value of QueryInterface (niceness)
* bugfix: initialized temp variables that are going to keep an interface by nil (segfaults)
* bugfix: AS operator has to call QueryInterface before GetInterface (related to revision r15066)

git-svn-id: trunk@15068 -
2010-03-26 00:48:28 +00:00
ivost
8391b717ea * Some (delphi) applications expect that the QueryInterface method is invoked as first priority to query for an interface and GetInterface as 2nd priority
* The changes to the support functions are going to conform that.

git-svn-id: trunk@15066 -
2010-03-26 00:01:52 +00:00
Jonas Maebe
4d8f578e4c * when typecasting the result of pthread_self, always call it using
pthread_self(), because it's a procvar under Linux and hence otherwise
    the value of the procvar instead of the function result will be
    taken (mantis #15821)

git-svn-id: trunk@15049 -
2010-03-24 21:51:07 +00:00
Jonas Maebe
531efc5a69 * round(x) -> trunc(x+0.5) in Julian date conversion to prevent the current
rounding mode from influencing the result

git-svn-id: trunk@15037 -
2010-03-23 10:34:43 +00:00
olivier
8aaa5ee123 The unit name should start with an upper case to pass tobject5.pp test under BeOS (not tested yet ;-).
git-svn-id: trunk@15035 -
2010-03-23 00:24:42 +00:00
olivier
0223697b17 The unit name should start with an upper case to pass tobject5.pp test under Haiku.
git-svn-id: trunk@15034 -
2010-03-23 00:21:55 +00:00
Jonas Maebe
4303eda80c * moved SInvalidJulianDate from rtlconst to sysconst (part of r15032,
necessary because dateutils only depends on sysconst and it contains
    the julian-datetime helper routines)

git-svn-id: trunk@15033 -
2010-03-22 22:28:59 +00:00
Jonas Maebe
82ff623390 + fixed Julian date helpers (based on patch by Bernd Engelhardt, mantis
#16040)
  * finished remaining unimplemented Julian date helpers

git-svn-id: trunk@15032 -
2010-03-22 21:01:46 +00:00
Jonas Maebe
fa1d72a2cc + definition of pthread_mutex_trylock(), fixes compilation after r15026
git-svn-id: trunk@15027 -
2010-03-21 11:47:27 +00:00
marco
c477df5046 * TCriticalSection.Tryenter support (Mantis 15928) + short test/demo
tested on FreeBSD (general Unix) and Windows. Note that Haiku seems 
    to have a native threadmgr rather than the Unix one. Will notify 
    maintainer (Olivier)

git-svn-id: trunk@15026 -
2010-03-21 11:34:05 +00:00
marco
49fc4795e3 * fix for mantis 16052 RFC4122 compliance of own random GUID creation. Part II
git-svn-id: trunk@15024 -
2010-03-20 14:08:10 +00:00
marco
b6048862b8 * fix for mantis 16052 RFC4122 compliance of own random GUID creation.
git-svn-id: trunk@15023 -
2010-03-20 13:03:45 +00:00
michael
f29973cc71 * Added Exchange to TCollection. Bug ID #15517
git-svn-id: trunk@15012 -
2010-03-14 10:25:32 +00:00
Jonas Maebe
3ea3a41d2a o patch from Olivier for Haiku libiconv functionality (mantis #15906):
* Haiku's nl_langinfo implementation is now used under Haiku instead of
      the BeOS stub.
    * Fix linking to iconv in the iconvenc package. The prefix has change
      since the previous Haiku's version.

git-svn-id: trunk@14995 -
2010-03-09 09:58:14 +00:00
pierre
cee190b1f8 * shift128right last parameter should also by var type
git-svn-id: trunk@14993 -
2010-03-08 08:00:56 +00:00
olivier
54a0fbc015 * Active out support using $modeswitch under BeOS after r14965
git-svn-id: trunk@14990 -
2010-03-07 02:55:47 +00:00
olivier
27c99a7e13 * Active out support using $modeswitch under Haiku after r14965
git-svn-id: trunk@14989 -
2010-03-07 02:53:33 +00:00
Jonas Maebe
9cd0a2ff1e * link to libpthread at compile time on Linux to avoid problems on some
newer glibc systems when it's only loaded dynamically at run time

git-svn-id: trunk@14970 -
2010-03-04 15:36:35 +00:00
paul
e2dbccf017 rtl: fix streaming of ancestor components - save/restore FRootAncestor in TWriter.WriteComponent because it can be changed by DoFindAncestor call (if IDE/or user code is connected to OnFindAncestor event)
git-svn-id: trunk@14969 -
2010-03-04 07:21:18 +00:00
Legolas
bc1bcf343e * Updated NDS and GBA to devkitARM r28
* Updated libnds to 1.4.1
 * Fixed NDS rtl according with last string handling changes
 * Fixed nds audio examples

git-svn-id: trunk@14967 -
2010-03-02 21:56:41 +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