Commit Graph

386 Commits

Author SHA1 Message Date
John Senneker
bf59a2d4c8 Added support for files larger than ~2GB.
This implements #786.

TinyXML reads the entire file into a pre-allocated buffer in memory. To
get the buffer size, it uses `fseek()` to seek to the end of the file,
and `ftell()` to get the current byte offset. But because `ftell()`
returns a 32-bit signed value, it can only represent byte offsets, hence
file sizes, up to about 2GB.

To get around this, `fseek` and `ftell` have been replaced by the
`TIXML_FSEEK` and `TIXML_FTELL` macros, respectively, which will resolve
to 64-bit versions of these functions on platforms that have them.
2019-11-19 11:00:52 -05:00
Lee Thomason
5bf58f0d1f Merge pull request #753 from orbitcowboy/master
Fixed -Wold-style-cast warnings from g++.
2019-08-10 17:53:39 -07:00
Lee Thomason
c3601c62f6 Merge branch 'cugone-master' 2019-08-10 17:50:53 -07:00
Lee Thomason
effdf95f8c add test cases 2019-08-10 17:49:42 -07:00
Lee Thomason
7fd646a8a2 support more bool options 2019-08-10 17:40:19 -07:00
aaronkirkham07@gmail.com
c341cea501 add missing uint64_t methods to XMLPrinter
add missing XMLElement::Unsigned64Attribute body
2019-05-22 00:05:27 +01:00
orbitcowboy
710a3324f4 Fixed -Wold-style-cast warnings from g++. 2019-05-16 15:30:47 +02:00
cugone
1dbfe31858 Missing uint64_t XMLElement::Unsigned64Text(uint64_t defaultValue) implementation 2019-04-12 17:33:49 -05:00
cugone
47e229e189 Forgot Text and XMLElement versions; 2019-04-12 17:27:28 -05:00
cugone
75a5acc6bb UnsignedInt64 support 2019-04-11 22:03:43 -05:00
orbitcowboy
0e7f289590 Improved const correctness of local variables. There are no functional changes intended. 2019-01-15 11:28:49 +01:00
Lee Thomason
db13a82e62 fix huge number of declaration security issue 2018-07-28 14:56:20 -07:00
Lee Thomason
92fc089e17 remove deprecated errors. next version will be major. 2018-06-29 15:51:37 -07:00
Lee Thomason
30d0c3d5f2 add assertion 2018-06-29 15:47:37 -07:00
Derek Quam
be69ae6352 In PrintString, move the optimization under the if ( _processEntities ) block and retain the strlen Write in the new else block. Added a test case. 2018-04-18 13:40:55 -05:00
Lee Thomason
befc3c3ae7 fix compiler inconsistency 2018-04-05 15:53:14 -07:00
Lee Thomason
f928c35186 clean up the depth tracking a bit 2018-04-05 09:24:20 -07:00
Lee Thomason
d946ddadc2 upgrade to vs2017. fix stack overflow attack. 2018-04-05 09:11:08 -07:00
Gumichan01
0f1fa6d271 fix "dereference before null check" defect
See issue #654
2018-02-01 14:27:43 +01:00
Peter Matula
50689919b7 rename DEBUG define to TINYXML2_DEBUG
The original name is to general. This prevents possible name collisions with other defines, enums, etc. from projects where tinyxml2 is used.
2018-01-09 12:52:26 +01:00
Lee Thomason
ff97dbb2cc Merge branch 'master' into error-str 2017-12-29 09:11:27 -08:00
Lee Thomason
a36f7ac776 fix error string output when there is no formatting 2017-12-28 13:48:54 -08:00
Alex Alabuzhev
90e69c95ef Suppress MSVC warning C4267: conversion from 'size_t' to 'int', possible loss of data 2017-11-09 00:33:05 +00:00
Lee Thomason
d548b7e717 Merge branch 'master' into errorstr 2017-11-01 07:52:46 -07:00
Lee Thomason
eb2f51e63b removed unused variables 2017-11-01 07:52:43 -07:00
Brad Anderson
85aac02172 Minor performance tweaks 2017-10-24 21:48:28 -06:00
Alexander Golubev
b2e08e4bc0 XMLPrinter optimization
Stream writing to buffer will be x5 faster
2017-10-24 17:31:33 -06:00
Lee Thomason
0c0f98bf84 merge from master 2017-10-11 11:03:49 -07:00
Lee Thomason
d556e6df9d Merge branch 'master' into errorstr 2017-10-11 10:57:52 -07:00
Lee Thomason
f49b9658bb fix up error system issues 2017-10-11 10:57:49 -07:00
Lee Thomason
714ccfe29b fix line number tracker. error msg wip 2017-10-10 17:08:12 -07:00
Lee Thomason
7abfa6b1a0 Merge branch 'gccWeffc' of git://github.com/lelegard/tinyxml2 into lelegard-gccWeffc 2017-10-10 16:33:58 -07:00
Lee Thomason
aa1883928b Error string re-work 2017-09-19 17:54:31 -07:00
Dmitry-Me
e8f4a8b567 Fix crash when element is being inserted "after itself" 2017-09-15 19:34:36 +03:00
Thierry Lelegard
7f0f754cb7 Code cleanup to pass gcc -Weffc++ warnings 2017-09-01 10:14:16 +02:00
Dmitry-Me
a28eb0763d Extract and reuse conversion code 2017-08-25 18:34:18 +03:00
Shuichiro Suzuki
87cd4e0582 Add 'const' on XMLDocument::DeepCopy. This make us copy const
XMLDocument being copied to another document.
2017-08-24 11:20:26 +09:00
Dmitry-Me
3cc6f5c6f2 Annotate fall throughs with comments 2017-08-03 18:42:20 +03:00
Lee Thomason
8c9e3133c4 remove error string inline. hopefully helps with odd linking issues 2017-06-26 16:55:01 -07:00
Lee Thomason
8bba8b41d6 mark unused enums 2017-06-20 09:18:41 -07:00
Lee Thomason
9201bb96d3 Merge pull request #563 from Dmitry-Me/betterParameterNameInClone
Better parameter name
2017-06-19 14:23:39 -07:00
Dmitry-Me
3f63f21cf5 Better parameter name 2017-06-19 18:25:19 +03:00
Lee Thomason
8a763619ac fix incorrect factoring 2017-06-16 09:30:16 -07:00
Lee Thomason
bc527554e8 Merge pull request #558 from leethomason/clone
Support clone (deep copy) of XMLDocument and XMLNode
2017-06-15 12:01:48 -07:00
Dmitry-Me
c2f677b05e Unlinked nodes assertions 2017-06-15 12:44:27 +03:00
Lee Thomason
1346a174ae tweak comments. fix copy to self case. 2017-06-14 15:14:19 -07:00
Lee Thomason
1bbc66b193 Merge branch 'master' into clone 2017-06-14 15:10:37 -07:00
Lee Thomason
b754ddf0fb address feedback from review 2017-06-14 15:02:38 -07:00
Lee Thomason
816d3fa0cd Fix string leaking (and destructors not getting called) when there are XMLNodes that aren't in the document tree 2017-06-05 14:35:55 -07:00
Lee Thomason
a30f8bd136 Merge remote-tracking branch 'origin/master' into clone 2017-06-01 18:46:53 -07:00