Commit Graph

30359 Commits

Author SHA1 Message Date
marco
ae3ab174cd * more Vista fixes, and implemented some macro's that somehow were not implemented.
git-svn-id: trunk@13206 -
2009-05-27 20:08:56 +00:00
Jonas Maebe
7e908cb1e3 * forbid "nil +/- ordinal" expressions (Delphi-compatible, and the
expression is meaningless since nil is not a valid address)

git-svn-id: trunk@13205 -
2009-05-27 17:50:55 +00:00
Jonas Maebe
15b0711ca0 * various optimizations by Dave Richards (mantis #12440)
git-svn-id: trunk@13204 -
2009-05-27 17:26:50 +00:00
marco
3af4741b5e * vista items till WC_STATICA, roughly at 80% now.
git-svn-id: trunk@13203 -
2009-05-27 16:26:32 +00:00
marco
baca8ec9b6 * first half of vista updates.
git-svn-id: trunk@13202 -
2009-05-27 08:46:27 +00:00
marco
a10f94a50a * Marquee patch from Paul + some Vista PBM_ constants.
git-svn-id: trunk@13201 -
2009-05-27 07:29:04 +00:00
sergei
cf98a19e8e + Implementation of TDOMDocument.CreateAttributeNS and CreateElementsNS
+ Initial part of TDOMElement.SetAttributeNS
+ TDOMImplementation.CreateDocumentType checks validity of QualifiedName
* Use 'managed' memory allocation in TDOMEntity.CloneNode and TDOMNotation.CloneNode to avoid leaks
* TDOMDocument.RemoveID now using THashTable.RemoveData(), simplifies things

git-svn-id: trunk@13200 -
2009-05-26 22:14:21 +00:00
marco
92e235d92b * tmschema as include file added at Paul's request
git-svn-id: trunk@13199 -
2009-05-26 16:54:49 +00:00
Jonas Maebe
dc00a747f4 * make references PIC-safe before pushing them as parameter (mantis #13829)
git-svn-id: trunk@13198 -
2009-05-26 16:22:41 +00:00
marco
ffc2750cd0 * uxtheme moved from Lazarus.
* Disabled (ifdeffed) lock around init/finalization because of circular
    reference between fcl-base and winunits-base. If needed it can be
    recoded directly using system specific (windows.pas) routines.

git-svn-id: trunk@13197 -
2009-05-26 12:24:58 +00:00
sergei
55e3c6be3a dom.pp: No more failures on level 1 testsuite... at last.
+ Implemented handling of default attributes:
  * creating an element also creates and attaches the default attributes;
  * removing an attribute restores it with default value, if there's one.
+ Attribute nodes remove themselves from the owner element upon destruction, making it possible
  to Free attributes manually.
* TDOMNamedNodeMap.SetNamedItem does not reset attribute OwnerElement if the argument node is already
  contained in the map (and whole operation is therefore is a no-op).

git-svn-id: trunk@13196 -
2009-05-25 20:28:40 +00:00
Jonas Maebe
966ebbf157 * fixed missing reference counting in case a refcounted type was implicitly
type casted to a non-refcounted type, e.g. dynarray to pointer in Delphi
    mode (mantis #13820)

git-svn-id: trunk@13195 -
2009-05-25 19:41:14 +00:00
Jonas Maebe
17a7903e60 * fixed evaluating "nil +/- int_const" expressions (mantis #13815)
git-svn-id: trunk@13194 -
2009-05-25 18:34:04 +00:00
Jonas Maebe
1456e82a6a * make sure example also works without an application bundle
git-svn-id: trunk@13193 -
2009-05-24 12:26:38 +00:00
Jonas Maebe
7f0631d311 * again made less complex in case of PIC, otherwise it fails
git-svn-id: trunk@13192 -
2009-05-24 12:25:33 +00:00
Jonas Maebe
78c29a33ba * changed the parameters of gotoxy() and the return values of wherex/wherey
from byte into tcrtcoord=1..255, since all crt unit coordinates are
    1-based (not for Window() procedure, see comments in crth.inc;
    mantis #13788)

git-svn-id: trunk@13191 -
2009-05-24 11:48:49 +00:00
joost
d39e82b256 * Fixed resource-leak on exceptions during creating/dropping databases, patch from taka_jp, bug #13587
git-svn-id: trunk@13190 -
2009-05-24 11:20:45 +00:00
joost
2435a4a48f * Modified patch from taka_jp to set the connection-dataset for mysql, bug #13588.
git-svn-id: trunk@13189 -
2009-05-24 11:17:59 +00:00
marco
82b9749e71 * thread creation failure for win<x>. Mantis 13798
git-svn-id: trunk@13188 -
2009-05-23 15:40:13 +00:00
Jonas Maebe
c40d6cca8b + Darwin-specific fcntl constants
git-svn-id: trunk@13186 -
2009-05-23 10:10:56 +00:00
sergei
733d2c38d5 dom.pp: Customized memory management, fixes 17 test cases and all memory leaks in testsuite:
* Every node created by Document.CreateXXX method is now guaranteed to be destroyed with the
  document, whether it is part of the tree or not. Therefore, DOM methods which remove nodes
  from the tree (namely, TDOMNode.RemoveChild, TDOMNode.ReplaceChild,
  TDOMElement.SetAttributeNode and TDOMElement.SetAttributeNodeNS) no longer need to destroy
  their return value and are now conformant to the specs.
* Nodes are allocated in arrays of instances (emulates 'placement new operator' in C++ terms).
  Allocation and freeing are as fast as possible (just assigns a couple of pointers).
* Behaviour of nodes that are created by direct call to constructor is unchanged.

git-svn-id: trunk@13185 -
2009-05-21 23:07:32 +00:00
sergei
d3dd0d6aa0 dom.pp: Added node memory management code (pure addition, no functionality changes this time).
git-svn-id: trunk@13184 -
2009-05-21 20:45:16 +00:00
marco
8fe555afca * some minor vista/w7 related updates to message numbers
git-svn-id: trunk@13183 -
2009-05-21 14:11:16 +00:00
marco
ec364a66e8 * win64 compatibility fix from Vincent. TLibHandle is now equal to system.thandle
git-svn-id: trunk@13182 -
2009-05-21 11:26:54 +00:00
Jonas Maebe
ee69d00bec - unconditionally enabled {$ifdef PARAOUTFILE}-code (that define was
decomissioned quite a while ago, but this file was forgotten in
    that process)

git-svn-id: trunk@13181 -
2009-05-21 09:57:45 +00:00
sergei
035fe43b72 Final strike for #13605:
src/dom.pp:
* GetElementsByTagName[NS] results now get cached in a hashtable. Repeated calls to
  GetElementsByTagName with same arguments return the same instance of NodeList. All NodeLists
  created during document lifetime are destroyed with the document.

src/xmlutils.pp:
* THashTable.Lookup(), changed SetString to SetLength+Move because SetString truncates on #0
+ added THashTable.RemoveData() method

tests/api.xml:
- No longer need to 'garbage collect' the NodeLists.

git-svn-id: trunk@13180 -
2009-05-20 23:08:24 +00:00
sergei
17bbe72d08 * Moved TDOMAttrDef class from xmlread.pp to dom.pp (in order to implement default attribute handling at DOM level).
* Using regular CloneNode() method to create copies of TDOMAttrDef.

git-svn-id: trunk@13176 -
2009-05-18 22:03:37 +00:00
sergei
0a242ba49f dom.pp: Ignore node read-only property when its owning document is being destroyed (enables destroying nodes in arbitrary order).
git-svn-id: trunk@13175 -
2009-05-18 20:33:43 +00:00
sergei
6049600ccb DOM test suite enhancements:
* Do not convert tests which request implementation attribute 'signed'='true'.
  Such tests aren't applicable to our unsigned DOM, they only cause compiler warnings
  and noise in the test report.
+ Support for default properties (obj.item(x) -> obj[x]).
+ Support black-listing of testcases. Some of them (in HTML testsuite) are easier to
  rewrite by hand than to convert.
+ Support adding certain units to 'uses' clause (e.g. HTML suite must use dom_html).

git-svn-id: trunk@13172 -
2009-05-17 22:56:51 +00:00
marco
501f20c546 * reversed destruction order of TFPObjectList as per Mantis 13715.
Note that it is _NOT_ good coding to rely on such things

git-svn-id: trunk@13168 -
2009-05-17 17:09:26 +00:00
Jonas Maebe
3d771a7d39 * when loading the functions for a particular OpenGL function, also
automatically load those for lower versions (patch by "satan", mantis
    #13687)

git-svn-id: trunk@13167 -
2009-05-17 16:01:13 +00:00
marco
b5985d7e7c * gtk_cell_renderer_combo_new returns gtkcellrenderer not -combo (mantis 13689),
probably to support some kind of procedural polymorphism.

git-svn-id: trunk@13166 -
2009-05-17 15:37:27 +00:00
Jonas Maebe
bbfd8812c9 * small fixes from Karl-Michael Schindler (mantis #13048)
git-svn-id: trunk@13165 -
2009-05-17 14:50:44 +00:00
Jonas Maebe
84cdb246fa * copyright in comments updated (from mantis #13048)
git-svn-id: trunk@13164 -
2009-05-17 14:42:17 +00:00
Jonas Maebe
b59d1f724b * support {$i *.ext} to include source files with the same base name, but
with a different extension than the current source file (mantis #13696)

git-svn-id: trunk@13163 -
2009-05-17 14:33:20 +00:00
yury
9a0808d0fb * Set default image base for win64 dlls to $110000000.
git-svn-id: trunk@13160 -
2009-05-17 12:47:26 +00:00
yury
bf00b3e94b * Replaced some ifdef x86_64 by ifdef cpu64bitaddr, since it is more correct.
git-svn-id: trunk@13159 -
2009-05-17 12:43:58 +00:00
marco
c0aa309cde * Fix for gdb66/mingw (general?) program reset issue. Instructs GDB to turn confirmation off. Mantis 0011968
git-svn-id: trunk@13158 -
2009-05-17 12:43:57 +00:00
marco
39afd88425 * mingw textmode IDE debugging support. First working version (for me), atexit handler for mingw and cygwin stuff under ifndef USE_MINGW_GDB
git-svn-id: trunk@13157 -
2009-05-17 12:22:41 +00:00
Jonas Maebe
4106ce540f * fixed compilation with -Cr after r13147
* changed type of minstacksize, maxstacksize and imagebase from aword
    (= size of integer registers of the target platform) into puint
    (= size of address space of target platform)

git-svn-id: trunk@13155 -
2009-05-17 10:07:54 +00:00
mazen
f7ec6481cf * Source code and XLM files could not be executable.
git-svn-id: trunk@13154 -
2009-05-16 13:15:48 +00:00
marco
55bf970d0b * small mingw related fixes.
git-svn-id: trunk@13153 -
2009-05-16 12:00:51 +00:00
Jonas Maebe
3a8b29be91 + test conversion from class to differently sized enum and to differently
sized integer (succeed for Delphi, fail for objfpc)
  * fixed compiler so it only allows typecasting a class/interface to a
    differently sized integer in Delphi mode

git-svn-id: trunk@13152 -
2009-05-16 11:07:09 +00:00
Jonas Maebe
47c28c2db3 * pass -no_dead_strip_inits_and_terms to the linker, since we use these for
dynamic library initialization (this automatically enables dead code
    stripping/smart linking in all cases though, independent of -XX/CX;
    on the other hand, there is no real reason not to use it anymore on
    Mac OS X, since support was introduced in Xcode 1.5 for
    Mac OS X 10.3.9 and that's also the earliest version we support
    for running FPC on)

git-svn-id: trunk@13151 -
2009-05-16 10:42:23 +00:00
Jonas Maebe
d3cec25dce * small indentation fix
git-svn-id: trunk@13150 -
2009-05-16 10:31:35 +00:00
Jonas Maebe
ea356808b1 * tests have to fail
* "fixed" tests so they also fail on 32 bit platforms

git-svn-id: trunk@13149 -
2009-05-16 10:30:28 +00:00
yury
726764be0b * This test must be run on lower 4Gb of address space. Explicitly set image base on Windows.
git-svn-id: trunk@13148 -
2009-05-15 23:15:14 +00:00
yury
78b2618db6 * Fixed setting of image base using {$IMAGEBASE X} directive.
* Cleanup of relative code.

git-svn-id: trunk@13147 -
2009-05-15 23:12:02 +00:00
yury
ede93974bc * Fixed writing of external debug info when reloc section should be created.
git-svn-id: trunk@13146 -
2009-05-15 22:30:52 +00:00
yury
628b0c23ac * exeinfo: Return executable image base and current module base address on Windows.
* exeinfo: Properly handle long COFF section names. Bug #13499.
* lineinfo, lnfodwrf: Properly use executable image base and current module base address.

git-svn-id: trunk@13145 -
2009-05-15 22:14:09 +00:00