Lee Thomason
2ecc203835
Merge branch 'patch-1' of https://github.com/SirR4T/tinyxml2 into SirR4T-patch-1
2015-05-22 10:57:00 -07:00
Dmitry-Me
5420e547d3
Get rid of two distinct enum items with same same
2015-05-20 10:51:26 +03:00
Dmitry-Me
764545e02a
Explicitly check entity was not found
2015-05-20 10:29:24 +03:00
Sarat Addepalli
3df007ef9d
Fix and use correct pointers and types.
...
Should have been `XMLDeclaration* decl = ...` instead of `XMLElement* ele = ...`
2015-05-20 10:43:51 +05:30
Sarat Addepalli
96b4346660
Remove unnecessary cast in XMLNode::Value()
2015-05-20 10:36:06 +05:30
Sarat Addepalli
9c3122b89b
Bypass asserts for `XMLDocument::Value()`
...
When the node is an XMLDocument, bypass calling the `_value.GetStr()` function, since we know we have to return `( const char* )0` inevitably.
This fixes #323
2015-05-19 12:49:32 +05:30
Sarat Addepalli
2f0d173f94
Fix whitespaces in tinyxml2.cpp
2015-05-19 09:02:16 +05:30
Sarat Addepalli
a0f499dda1
Fix ParseDeep() to close issue #332
...
If the node to be added is an XML Declaration, then check if the document has any children already.
XML Declarations can only be the FirstChild() s of an XML Document.
2015-05-18 09:25:17 +05:30
Dmitry-Me
67c429e4b4
Avoid unneeded printer object creation
2015-05-08 18:08:18 +03:00
Dmitry-Me
72801b8b20
First check, then convert
2015-05-07 09:41:39 +03:00
Dmitry-Me
2a8b1f5789
Ensure file contents fit into size_t range
2015-04-30 14:58:57 +03:00
Lee Thomason
882e89e601
Merge pull request #326 from Dmitry-Me/cleanupPointersComparison
...
Unify pointers comparison, consistency asserts
2015-04-27 16:57:37 -07:00
Dmitry-Me
69d521d354
Unify pointers comparison, consistency asserts
2015-04-20 18:05:53 +03:00
Dmitry-Me
2ad4320339
Range check without clang "always true" warning
2015-04-16 12:18:58 +03:00
Lee Thomason
4f0c2ffcab
fix 'always true' warning
2015-04-13 13:58:20 -07:00
Dmitry-Me
ccd267a782
Detect parsing error earlier when looking at end of tag
2015-04-10 15:42:54 +03:00
Lee Thomason
e3932d6b7f
Merge pull request #319 from Dmitry-Me/getRidOfNull
...
Get rid of NULL, cleanup formatting
2015-04-09 14:49:25 -07:00
Lee Thomason
5ea4f3cb77
Merge pull request #315 from Dmitry-Me/orderPatternsAsTheyAreSearched
...
Order patterns the same way they are searched
2015-04-09 14:48:44 -07:00
Dmitry-Me
e76b8519d1
Get rid of NULL, cleanup formatting
2015-04-08 13:41:40 +03:00
Dmitry-Me
9614f8ff74
More consistency asserts
2015-04-08 10:06:06 +03:00
Dmitry-Me
400f1199ea
Ensure enum is printed properly
2015-04-07 11:51:21 +03:00
Dmitry-Me
2667aab551
Const qualifiers where access is const, unify formatting
2015-04-03 10:56:59 +03:00
Lee Thomason
51b33321be
Merge pull request #308 from Dmitry-Me/mergePrintCalls
...
Merge Print() calls
2015-04-02 13:27:50 -07:00
Dmitry-Me
6a79c17c87
Merge Print() calls
2015-03-31 12:18:17 +03:00
Dmitry-Me
c505e136da
Order patterns the same way they are searched
2015-03-30 09:54:36 +03:00
Dmitry-Me
d95172ba47
Print entire substring instead of each character
2015-03-30 08:11:18 +03:00
Lee Thomason
f657783cf2
merge fix for save file error
2015-03-26 11:18:21 -07:00
Lee Thomason
3ccb1cec29
minor formatting cleanup
2015-03-24 11:17:44 -07:00
Ant Mitchell
189198f19c
Issue 302: clear any previous save error
2015-03-24 16:20:36 +00:00
Ant Mitchell
7e744771ad
Issue299 - Allow Accept() to work with element trees that are not
...
linked in to the owning document.
2015-03-24 14:33:28 +00:00
Lee Thomason
2b1e18185c
Merge pull request #298 from Dmitry-Me/fixCommentTypo
...
Fix comment typo
2015-03-16 11:57:38 -07:00
Dmitry-Me
2f465c412a
Fix comment typo
2015-03-16 11:08:23 +03:00
Dmitry-Me
3dc797b2a4
Better asserts in parsing
2015-03-16 11:06:46 +03:00
Lee Thomason
245bee08d6
Merge pull request #296 from Dmitry-Me/assertForImpossibleCase
...
Assert for impossible case
2015-03-15 16:14:12 -07:00
Lee Thomason
80647bde2e
Merge remote-tracking branch 'origin/master'
2015-03-15 16:12:51 -07:00
Lee Thomason
7265b763fc
merge change; add extra assert
2015-03-15 16:11:47 -07:00
Dmitry-Me
33bb764d12
Assert for impossible case
2015-03-14 17:14:00 +03:00
Dmitry-Me
bab9b6d59c
More asserts in numbers parsing
2015-03-14 16:41:46 +03:00
Dmitry-Me
6f51c803a1
Resolve crash when printing malformed entities - issue 291
2015-03-14 13:25:03 +03:00
Dmitry-Me
9fcb876d3b
Fix null pointer dereference planted in PR287 and reported in PR288
2015-03-05 17:53:34 +03:00
Dmitry-Me
023846628d
Add and make use of pre- and post-asserts in XMLDocument::Identify()
2015-03-03 16:02:13 +03:00
Dmitry-Me
6acc9a5469
Move declaration to actual first use
2015-01-15 13:27:47 +03:00
Dmitry-Me
30bdc9735b
Pre-asserts to clarify buffer usage
2015-01-14 08:32:23 +03:00
Lee Thomason
d95716bd79
Merge pull request #273 from Dmitry-Me/moreChecksInUtfConversion
...
More checks inside UTF conversion
2015-01-13 13:39:46 -08:00
Lee Thomason
7e67bc89de
minor formatting changes
2015-01-12 14:05:12 -08:00
Dmitry-Me
bbaf1e1498
More checks inside UTF conversion
2015-01-12 14:07:10 +03:00
Dmitry-Me
9f56e12c16
strchr() can only find what is was asked for
2015-01-12 10:07:54 +03:00
Lee Thomason
d15686653a
Merge pull request #269 from Dmitry-Me/makeFormattingConsistent
...
Fix formatting, get rid of useless if-else chain
2015-01-09 16:57:17 -08:00
Lee Thomason
f802660f7d
Merge pull request #268 from Dmitry-Me/avoidRepeatedComparisons
...
Get rid of repeated comparisons
2015-01-09 16:56:40 -08:00
Dmitry-Me
257e11b25b
Fix formatting, get rid of useless if-else chain
2015-01-09 15:50:47 +03:00
Dmitry-Me
3ae4f3eb3c
Get rid of repeated comparisons
2015-01-09 15:44:16 +03:00
Dmitry-Me
e28be7530c
Use explicit const_cast
2015-01-09 14:59:30 +03:00
Lee Thomason
3cebdc4fac
clean up function names. clean up pointer
2015-01-05 17:16:28 -08:00
Lee Thomason
75b4e23957
Merge pull request #260 from Dmitry-Me/placeChecksInMoreNaturalOrder
...
Rearrange checks in more natural order
2015-01-05 17:07:50 -08:00
Lee Thomason
6e504e9baf
Merge pull request #259 from Dmitry-Me/preAndPostAssertsInGetStr
...
Pointer asserts in GetStr()
2015-01-05 17:07:06 -08:00
Lee Thomason
625402a01f
Merge pull request #257 from Dmitry-Me/reusePreInsertMagic
...
Reuse pre-insert manipulations
2015-01-05 17:05:23 -08:00
Lee Thomason
56223ddaea
Merge pull request #256 from Dmitry-Me/reuseParseAdjustments
...
Reuse code with pre-parse adjustments
2015-01-05 17:04:04 -08:00
Lee Thomason
deccff765f
Merge pull request #254 from JayXon/onlyCheckElementPointerOnce
...
Only check ele pointer once
2015-01-05 17:00:43 -08:00
Dmitry-Me
7a7e5dc525
Rearrange checks in more natural order
2015-01-01 17:58:35 +03:00
Dmitry-Me
5ffa73e979
Pointer asserts in GetStr()
2015-01-01 17:47:40 +03:00
Dmitry-Me
74e394023a
Reuse pre-insert manipulations
2015-01-01 16:26:17 +03:00
Dmitry-Me
97476b7b9e
Reuse code with pre-parse adjustments
2015-01-01 16:15:57 +03:00
Lee Thomason
b4e81b014e
Merge pull request #253 from Dmitry-Me/getRidOfC4127InAssert
...
Suppress C4127 in asserts
2014-12-26 16:25:14 -08:00
Lee Thomason
5f06297230
Merge pull request #248 from JayXon/simplifyParseName
...
Simplify ParseName
2014-12-26 16:18:46 -08:00
JayXon
e4bf6e360d
Only check ele pointer once
2014-12-26 01:00:24 -05:00
Dmitry-Me
4bcbf142a8
Suppress C4127 in asserts
2014-12-25 19:05:18 +03:00
JayXon
ee525dba4d
Simplify ParseName
...
Only the first char needs to be checked with IsNameStartChar, so check
it before the loop.
2014-12-24 04:01:42 -05:00
Dmitry-Me
bb836dce57
Unify SkipWhiteSpace()/ReadBOM() calls, add asserts
2014-12-24 11:54:05 +03:00
Lee Thomason
69242c4b9b
Merge pull request #247 from Dmitry-Me/combineCheckWithDependentCall
...
Move the check into dependent call
2014-12-23 13:16:11 -08:00
Dmitry-Me
a092bc1f5a
Move the check into dependent call
2014-12-23 17:57:05 +03:00
Dmitry-Me
5b4a5169e3
Move variable declaration closer to where it's needed
2014-12-23 17:36:28 +03:00
Lee Thomason
4e5900c5e8
Merge pull request #244 from Dmitry-Me/unifyCharacterCasts
...
Unify character casts, reorganize checks
2014-12-22 11:26:52 -08:00
Lee Thomason
0b4bdd2a47
Merge pull request #243 from JayXon/simplify_node_logic
...
Simplify node logic
2014-12-22 11:22:47 -08:00
Dmitry-Me
8b67d741d4
Unify character casts, reorganize checks
2014-12-22 11:35:12 +03:00
Lee Thomason
ebb0c8f904
fix compiler warning
2014-12-17 10:50:32 -08:00
Lee Thomason
7334f9efab
fix a clang warning
2014-12-17 10:43:48 -08:00
Lee Thomason
cd011bc1b7
start working through memory bugs
2014-12-17 10:41:34 -08:00
JayXon
dbfdd8fdd5
Simplify node logic
2014-12-12 20:07:14 -05:00
Lee Thomason
ee2c46928e
Merge pull request #240 from Dmitry-Me/simplifyNodeOwnershipTracking
...
Even more pointer pre-asserts
2014-12-12 15:37:22 -08:00
Dmitry-Me
ed2a407a88
Add more pointer pre-asserts
2014-12-12 10:38:48 +03:00
Dmitry-Me
e6a95ce50e
Validate pool block has the right size before calling placement new
2014-12-10 09:10:27 +03:00
Lee Thomason
f0e8fac4ee
Merge pull request #239 from Dmitry-Me/addMorePointerAsserts
...
More pointer pre-asserts
2014-12-09 11:14:16 -08:00
Dmitry-Me
abb2d046d0
More pointers pre-asserts
2014-12-09 12:59:31 +03:00
Dmitry-Me
9bcd9c7674
Should not check errorID with implicit conversion
2014-12-09 10:58:14 +03:00
Dmitry-Me
1227d51ed0
Reuse const FindAttribute for non-const version thereof
2014-12-05 13:41:45 +03:00
Dmitry-Me
ab37df8d67
Error checking never actually checked anything
2014-11-28 12:08:36 +03:00
Lee Thomason
2114e47453
Merge pull request #230 from antonindrawan/master
...
Compile TinyXml2 with the Dinkum C++ of QNX 6.5 and QNX 6.6.
2014-11-27 22:34:34 -08:00
Lee Thomason
2965880447
switch to using pointer, not reference
2014-11-27 22:31:11 -08:00
Anton Indrawan
f59e2d6a89
Compile TinyXml2 with the Dinkum C++ of QNX 6.5 and QNX 6.6.
...
When we include c++ headers, we have to use explicit std::
2014-11-18 20:50:42 +01:00
Lee Thomason
03494b189c
Merge remote-tracking branch 'origin/master' into Dmitry-Me-properStrPairAssignment
2014-11-15 17:50:17 -08:00
Dmitry-Me
08b40dd8a5
Implement "move" equivalent of assignment operator for StrPair
2014-11-10 11:17:21 +03:00
Dmitry-Me
66d2a84715
Add pre-assert, fix comment
2014-11-08 15:24:52 +03:00
Lee Thomason
f07b952296
fix issue 184. clean up xcode project.
2014-10-30 13:25:12 -07:00
Dmitry-Me
d048f1e8e3
Bind reference to avoid repeated accesses by index
2014-10-01 10:30:16 +04:00
Dmitry-Me
097339a099
Remove unneeded virtual calls
2014-09-29 13:20:29 +04:00
Dmitry-Me
6d202ff20e
Eliminate repeated virtual calls
2014-09-26 14:21:00 +04:00
Dmitry-Me
9fb2b0f42c
Remove unneeded cast, reduce duplication, move declarations to their first use.
2014-09-23 17:27:39 +04:00
Lee Thomason
331596e83c
clean up the scope and names of the error code.
2014-09-11 14:56:43 -07:00
numatrumpet
003368429f
ErrorNames is not implemented by vector<string> but *char[]
2014-09-08 16:36:28 +09:00
numatrumpet
bb5ffac22d
Using C++11, XMLUtil::ToErrorName(XMLError) returns the name of error type
2014-09-06 22:56:46 +09:00
Dmitry-Me
3659fe1d33
Move loop variable definition into loop headers
2014-09-04 11:33:49 +04:00
Dmitry-Me
e3225b1c64
Convert DELETE_X macros into functions
2014-09-03 11:03:11 +04:00
Dmitry-Me
b6b4e82626
Remove repeated virtual calls
2014-08-27 17:17:47 +04:00
Dmitry-Me
ec19a0e513
Remove obsolete comment
2014-08-25 11:05:55 +04:00
Dmitry-Me
63f3de1a3c
Make code more defensive
...
* initialize out-parameter for cases the callee fails to
* add assert for length being within range
* replace post-assert with pre-assert
Also replace the loop with an equivalent memcpy() call
2014-08-21 12:33:19 +04:00
Dmitry-Me
67a5bb0ac1
Assert when trying to adjust _start in "needs delete" mode.
2014-08-20 10:01:53 +04:00
Dmitry-Me
01578db56b
Wrap fopen()/fopen_s() calls to avoid duplication
2014-08-19 10:18:48 +04:00
Dmitry-Me
acb9c9c260
Check ftell() result for error code before using it.
2014-08-04 09:49:25 +04:00
Dmitry-Me
08e7f7be59
fgetc() is not required to clear the error indicator on success
2014-07-31 15:19:14 +04:00
pffang
91d34a0989
WinCE Compatibility Fix
2014-07-10 10:02:35 +08:00
Lee Thomason
a0744c8dca
fix implementation of much simpler visual studio printing
2014-03-16 10:32:27 -07:00
Thomas Roß
268c683fbd
Use _vscprintf to calc length of expanded format string.
2014-03-13 23:35:16 +01:00
Uli Kusterer
613410095c
Provide finer control over indentation inside the XMLPrinter. You'll have to subclass it to override its standard behaviour by overwriting CompactMode().
2014-02-22 17:19:08 +01:00
Lee Thomason
7de26f7dc7
Merge remote-tracking branch 'origin/master'
2014-02-21 22:47:21 -08:00
Lee Thomason
82d3200571
clean up some error checking logic
2014-02-21 22:47:18 -08:00
Uli Kusterer
5d1d27e88b
Keep indentation control fully inside the XMLPrinter. You'll have to subclass it to override its standard behaviour by overwriting CompactMode().
2014-02-20 11:50:22 +01:00
Uli Kusterer
07ac762b80
SetBoolFirstChild now makes sure its bool is not wrapped onto its own line.
2014-02-01 15:06:50 +01:00
Uli Kusterer
b85b4e0a60
Merge branch 'pernodecompactwhitespace'
...
* pernodecompactwhitespace:
SetForceCompactMode() now also handles case of a single tag inside another correctly.
Give tests a few more chances to fail, e.g. on tag sequences or attributes.
Added SetForceCompactMode() for overriding the compact setting on a per-node level. All sub-nodes will be printed compact as well.
Conflicts:
xmltest.cpp
2014-02-01 13:38:04 +01:00
Uli Kusterer
ca412e87f2
SetForceCompactMode() now also handles case of a single tag inside another correctly.
2014-02-01 13:35:05 +01:00
Uli Kusterer
d5c9e8b81d
Added SetForceCompactMode() for overriding the compact setting on a per-node level. All sub-nodes will be printed compact as well.
2014-02-01 12:57:57 +01:00
Uli Kusterer
593a33d061
Added SetForceCompactMode() for overriding the compact setting on a per-node level. All sub-nodes will be printed compact as well.
2014-02-01 12:48:51 +01:00
Uli Kusterer
53fe47c74e
Remove long long stuff again.
2014-01-27 01:47:30 +01:00
Uli Kusterer
35ce309f73
Urk, forgot to build this one after merging and goofed a bit.
2014-01-25 03:37:16 +01:00
Uli Kusterer
2861a7e63a
Merge branch 'master' of https://github.com/leethomason/tinyxml2
...
Conflicts:
tinyxml2.cpp
xmltest.cpp
2014-01-25 03:12:21 +01:00
Lee Thomason
5bb2d8079b
add variants of SetText() to support types
2014-01-24 10:42:57 -08:00
Uli Kusterer
664d05662e
Support for 'long long' number values.
2014-01-21 12:24:47 +01:00
Uli Kusterer
ff8e2041dd
To bring BoolFirstChild() more in line with the other methods, reimplemented it in terms of a new QueryBoolFirstChild().
2014-01-21 02:53:47 +01:00
Uli Kusterer
c1c20bb196
Bools should really be implemented as self-closing <true /> and <false /> tags, not as 0/1 inside a tag, so removing those SetText variants again, in favor of SetBoolFirstChild() and BoolFirstChild() methods.
2014-01-21 02:23:20 +01:00
Uli Kusterer
dcefa0e43f
Add typed convenience setters for SetText().
2014-01-21 01:36:41 +01:00
Uli Kusterer
869bb599c1
Make SetText() behave like the docs say.
2014-01-21 01:36:16 +01:00
Uli Kusterer
8fe342a872
Add SetText() as analog to GetText().
2014-01-21 01:12:47 +01:00
Lee Thomason
44ce7930b7
Merge branch 'master' of https://github.com/leethomason/tinyxml2
2014-01-14 12:30:18 -08:00
Lee Thomason
c3708ccf08
implement a fix to floating point precision as proposed by schuellc.
2014-01-14 12:30:03 -08:00
Daniel Marjamäki
ba4b328b3d
Fixed issue 147 (XMLDocument::LoadFile() may crash on non-regular file)
2014-01-10 21:37:27 +01:00
psi
690ba07bda
you have to check len before accsessing "p".
2013-11-03 10:54:33 +09:00
Lee Thomason
3b7927efb5
formatting tweaks
2013-10-26 21:50:46 -07:00
Michael Daumling
ed52328ced
Insert() methods check for inserted XML to be in the same doc, and remove XML from old location if already inserted.
2013-10-23 07:47:29 +02:00
Michael Daumling
2162688ad3
Issue #134 : Change 3 methods to not being inlined. They reference the StrPair class, which is not exported, thus creating linker problems with tinyxml2 in a DLL.
2013-10-22 17:03:37 +02:00
PKEuS
1bfb95488f
Added depth as constructor argument to XMLPrinter. This way, XML files that are not written with XMLDocument can be properly indented.
...
Removed unused forward declaration
2013-08-04 14:04:09 +02:00
PKEuS
1c5f99e37c
Fixed two cppcheck messages
2013-07-06 11:28:39 +02:00
Thomas Roß
6189231187
Initialize pointers to satisfy static code analyser.
2013-05-12 14:07:38 +02:00
Lee Thomason (grinliz)
d6bd7360b8
fix floating point specifier and clean up a warning
2013-05-11 20:23:13 -07:00
Thomas Roß
1470edc595
Fixed compiler warning for x64 builds.
2013-05-10 15:44:12 +02:00
Lee Thomason (grinliz)
d0a38c3a20
fix BOM preservation bugs. add new tests
2013-04-29 09:15:37 -07:00
Vasily Biryukov
1cfafd0d24
Fixed: LoadFile() returns XML_NO_ERROR for empty documents.
2013-04-20 14:12:33 +06:00
Andrew C. Martin
0fd8746f64
correct typos in comments / documentation
2013-03-09 20:09:45 -07:00
Lee Thomason (grinliz)
61cea67517
removing debug output
2013-02-01 19:13:13 -08:00
Lee Thomason (grinliz)
ac83b4e278
adjust the size of the memory pools
2013-02-01 09:02:34 -08:00
Martinsh Shaiters
a9d42b0dd3
Replace InitDocument() with Clear() and make it part of the API.
2013-01-30 11:19:39 +02:00
Martinsh Shaiters
c6d02f48d5
Implement new utility functions for testing validity of name and token characters.
2013-01-26 22:43:54 +02:00