1
0
Fork 0
Commit graph

44 commits

Author SHA1 Message Date
ehofman
2df12dfcdc small fixes 2009-06-03 00:18:56 +02:00
ehofman
a29bd715c1 Fix cacheFree 2009-06-03 00:18:55 +02:00
ehofman
fc0b771cdf * Implement a node cache that can be enabled at compile time.
the node cache prevents recursively walking the xml tree over and over
    again to find the specified nodes.
2009-06-03 00:18:55 +02:00
ehofman
20ad439f42 fixes for compiling without syntax validation. 2009-05-18 12:24:17 +02:00
ehofman
745277ec4a Skip one recursive function call for leaf nodes at the cost of a bit of code size. Fix comment support in some cases 2009-05-18 12:24:16 +02:00
fredb
4e7fde12b3 Compile xmlgrep with MSVC 7.1 2009-05-18 12:24:16 +02:00
ehofman
e47406b803 more small fixes 2009-05-18 12:24:16 +02:00
ehofman
7f16fbec70 * Various bugfixes, required to get fgrun working
* add testxml as sort of a stress test application
2009-05-18 12:24:16 +02:00
ehofman
7e4393bfab Various bugfixes. This allows me to run fgrun on all FlightGear aircraft in the base packageusing this xml code. 2009-05-18 12:24:16 +02:00
ehofman
fd2361ef55 allow C++ to include the header 2009-05-02 00:44:22 +02:00
ehofman
09adb5ee05 general cleanups. 2009-05-02 00:44:22 +02:00
ehofman
95bc1d587f Add support for CDATA 2009-05-02 00:44:22 +02:00
ehofman
bcf9687606 Fix an off by one problem. 2009-05-02 00:44:22 +02:00
ehofman
efc8d18d06 a small cleanup and make Windows simple_mmap function return the proper value if an error was detected. 2009-05-02 00:44:22 +02:00
ehofman
9122bfd1db * add printxml, an example utility that walks an xml-tree and prints it
contenst
2009-05-02 00:44:22 +02:00
ehofman
9e36b86756 * changes to the code to allow walking the xml-tree using "*" as a node name 2009-05-02 00:44:22 +02:00
ehofman
19c463f810 Ouch, forgot to allocate memory for the root node in xmlInitBuffer. Update xmlgrep to allow compiling it using xmlInitBuffer instead of xmlOpen 2009-05-02 00:44:21 +02:00
ehofman
ee34e97ada zero is a valid file descriptor, use -1 instead and better not use 'open' as a variable name. 2009-05-02 00:44:21 +02:00
ehofman
228c7aaaa0 * add xmlInitBuffer() for processing of a preallocated buffer
* add xmlErrorGetColumnNo to get the column number of the syntax error
  * pass an error at a higher level to lower levels
  * detect a number of extra syntax errors
2009-05-02 00:44:21 +02:00
ehofman
1f40ee2366 fix a buffer overflow 2009-05-02 00:44:21 +02:00
ehofman
e0528fc2d4 catch one more syntax error and remove a stale debug printf 2009-05-02 00:44:21 +02:00
ehofman
0654531fff * add support for comments inside xml-tags, e.g.: <test><!-- --></test> 2009-05-02 00:44:21 +02:00
ehofman
8862b3e2b3 * add support for self-contained tags like <test/>
* fix a problem if a file could not be mmaped
  * add a few comments which hopefully makes the code easier to understand
  * code cleanups
2009-05-02 00:44:21 +02:00
ehofman
8d85732a7d fix a case where a single-element root path (e.g. /printer) would not pass xmlNodeGetPath 2009-05-02 00:44:20 +02:00
ehofman
0561c0079a * Setting an error when a node isn't found isn't he best way,
need to find another way to report that.
  * Fix a bug where an error was incorrectly set in xmlNodeCopyName
2009-05-02 00:44:20 +02:00
ehofman
8dec4a987f * fix a problem where attributes or elements starting with the same letter
sequence could give a false negative result
  * Add a 'clear' attribute to the xmlErrorGet functions that indicates whether
    the error should be cleared or not
  * detect more xml syntax errors
2009-05-02 00:44:20 +02:00
fredb
3bb6d99542 errno is a reserved macro in some compilers 2009-05-02 00:44:20 +02:00
ehofman
54496730cd Fix a typo. 2009-05-02 00:44:20 +02:00
ehofman
a21dddeffc * Introduce a root-node that can hold extra information which is necessary
for thread safety under windows
  * Add xmlErrorGetString, xmlErrorGetLineNo for syntax error detetction
  * Add xmlErrGetNo for detection of, and clearing the last error
2009-05-02 00:44:20 +02:00
fredb
e00c4b98ce Compile xmlgrep with MSVC 7.1 2009-05-02 00:44:20 +02:00
ehofman
8943603ef1 * Rename xmlGetNode functions to xmlNodeGet for better consistancy
* likewise for xmlCopyNode en xmlCompareNode
  * add xmlAttributeGetDouble, xmlAttributeGetInt, xmlAttributeGetString
    xmlAttributeCopyString and xmlAttributeCompareString functions
  * fix some small bugs and problems along the way
  * add support for filtering on attribute value in xmlgrep
2009-05-02 00:44:20 +02:00
ehofman
aa30b94750 forgot one small fix 2009-04-15 23:19:29 +02:00
ehofman
306668887a better use of const and fix a bunch of warnings 2009-04-15 23:19:29 +02:00
ehofman
d015bfe72f * change a number of function parameters to const where appropriate
* fix a problem where the wrong node-name length was returned
  * xmlgrep now also works when only the -e options is specified
  * fix xmlgrep to show the correct node-name (it reported the parent
    node-name in the previous version)
2008-07-21 12:32:22 +00:00
ehofman
83c2f96153 * fix __xmlSkipComment to properly find the end of comment tag.
* add the xmlGetNodeName and xmlCopyNodeName functions
* add the xmlCopyString function
* clean up some code

'xmlgrep -v' now returns the proper node name
2008-07-20 09:38:53 +00:00
ehofman
b4ab5242ec Change the low level internals of the xml library to reflect the following;
* rewrite the code to always recursively walk the node tree when searching
    for a particular node. this is required for cases where a node with a
    particular name is located deeper in a node with the same name;
    for example -r /configuration/device/reference/device would fail in the
    previous verion
  * rename xmlGetElement to xmlGetNodeNum and add the possibility to request
    the nth node with this name
  * rename xmlGetNumElements to xmlGetNumNodes

The drawback is that this is approach slows down processing the files a bit,
but at least it can now find any xml node in any xml file.
Also, no more function changes are planned from now on.
2008-07-19 12:18:05 +00:00
ehofman
6e6e8bbefc * reorganize the code to be able to skip comment sections
* depreciate __xmlFindNextElement and use __xmlGetNode instead
* xmlGetNextElement now returns char* instead of void* for furute use
* add preliminary support for wildcards in the search path ('*' and '?')
2008-07-06 11:34:50 +00:00
ehofman
67ca3c0307 * fix a problem caused by removing the last unnecessary alloc
* strip leading-, and trailing spaces from the string before comparing
 * fix a problem where trailing spaces weren't removed
2008-07-01 12:15:46 +00:00
ehofman
d9b79d6e3e whoops, my bad 2008-06-30 12:05:26 +00:00
ehofman
f35ab314bf Remove the last unnecessary alloc from the library 2008-06-30 12:00:40 +00:00
ehofman
dd77cd25f6 Some small updates; fix typo's and fix a small memory leak
Improve the documentation in README
2008-06-30 07:30:02 +00:00
mfranz
64a07de080 Erik HOFMAN: add documentation/changelog 2008-06-29 13:33:26 +00:00
mfranz
24071a3133 Erik HOFMAN: faster and better xmlgrep implementation 2008-06-29 13:08:24 +00:00
ehofman
fa2caf88dc Add an XML grep utility. It's far from complete but it allowed me to test the animation files for the precense of the 'offset' element in the translation animation sections. 2005-09-24 12:31:41 +00:00