1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814
|
2003-08-06 Zoran Vasiljevic <zoran@archiware.com>
* generic/nodecmd.c: removed optimized domAppendChild1 in favour
of generic domAppendChild since former was trashing memory
in certain situations.
2003-08-06 Rolf Ade <rolf@pointsman.de>
* tests/all.tcl
* tests/domCmd.test: Added contraint need_uri, so that the few
tests, which needs the tcllib uri package are skipped, if
the uri package isn't present.
2003-07-06 Rolf Ade <rolf@pointsman.de>
* generic/tclexpat.c: Fixed bug in the subtree skipping
feature of event handlers. Should be merged with HEAD.
* lib/tdom.tcl: Fixed error reporting in tDOM::extRefHandler.
--- Backported fixes from HEAD ---
* generic/domxslt.c: Fixed a bug in xsl:number. If there is no
'count' attribute given to xsl:number, it must default to
the pattern that matches any node with the same node type as
the current node and, if the current node has an
expanded-name, with the same expanded-name as the current
node. But in case of PROCESSING_INSTRUCTION_NODEs as the
current node and no 'count' attribute, it counted all pi's
regardless of the name. Now, the name is respected, as it
should be.
* generic/tcldom.c: Added an argument check for XSLTCmds.
2003-07-03 Zoran Vasiljevic <zoran@archiware.com>
---- Changes done in rel-0-7-branch ----
---- Those should be merged in HEAD ----
* README
* README.AOL
* configure
* configure-tcl8.0.5
* configure.in
* apps/xslt.tcl
* extensions/tnc/tnc.c
* generic/tcldom.c
* mac/Prefix/tDOMPrefix.h
* mac/Prefix/tDOMPrefix_OSX.h
* mac/tDOM/pkgIndex.tcl
* tests/loadtdom.tcl: bumped version string to 0.7.8
* generic/domlock.c: fixed double mutex unlock.
* generic/tcldom.c: allows same thread to issue several
"attachDocument" commands to artificially bump the
document refcount thus making the document sticky.
Also, fixed variable tracing issues when tearing down the
dom document. Now, all node object command variables are
automatically untraced. This prevents memory trashing when
such variables are unset by user or by Tcl.
2003-04-09 Rolf Ade <rolf@pointsman.de>
* generic/dom.c: Fixed a bug in the creation of the error msg
in case of parsing errors in an external entity.
* generic/dom.c
* generic/dom.h
* generic/domxslt.c
* tests/domCmd.test
* doc/dom.*
* generic/tcldom.c: Added option -paramentityparsing to the
[dom parse] method. [dom parse] option parsing now uses
Tcl_GetIndexFromObj() (which additionally fixes a minor bug
with the current option parsing).
* generic/tcldom.c: Removed an unused variable. Improved error
reporting in case of not found attribute. Better options
check for the 'xslt' methods. Changed implementation of the
dom method isQName to use the lately introduced API function
domIsQNAME.
* generic/tclexpat.c
tests/parser.test: Fixed a bug in the value parsing of the
-paramentityparsing option.
* tests/domCmd.test: Added tests for the interface of the
xsltCmds.
* tests/xpath.test: Added test which documents the bug prior
to domxpath.c r1.63.
* doc/dom.*: Added 'package require tdom' to the syntax
decription (http://groups.yahoo.com/group/tdom/message/446)
* doc/domDoc.*: Added documentation for the toXSLTcmd method
and the resulting xsltCmds. Corrected the documentation for
the xslt method (missed -ignoreUndeclaredParameters and
-xsltmessagecmd in the method syntax).
2003-04-05 Rolf Ade <rolf@pointsman.de>
* generic/tclexpat.c: Bug fix: If the parsing state is already
not TCL_OK return in the notstandalonehandler immediately
success, otherwise the error msg will be overwritten with a
false diagnostic. A few editorial changes.
2003-04-04 Rolf Ade <rolf@pointsman.de>
* generic/dom.c
* generic/dom.h: Added domIsQNAME.
* generic/dom.c: Bug fix: For textNodes getLine/getColumn
method report the position of the first char of the text
node.
* generic/domxpath.c: Bug fix: Detects now some erroneous
XPath expressions. Added parameter number check to XPath
functions substring and concat (the last two XPath
functions, without such check, they must have slipped thou
somehow, up to now).
* generic/domxslt.c: Improved interal function reportError(),
can now be used with all kind of nodes not only element
nodes. Improved behavior in case of dubious numbering
(negative roman number or latin letters fall back to default
latin numbers). Fixed a potential memory leak (in case of
overwriting named templates without match attribute with an
other named template). Improved error reports: for more
detected errors there is now a line/column number
given. Plenty of improvements in detecting erroneous
stylesheets: more checks for format-number formatting
patters (although especically format-number patterns are
still a can of worms), added parameter number check for
additional XPath function current(), template, paramter,
variable, sort, choose, copy, and message elements.
2003-03-26 Rolf Ade <rolf@pointsman.de>
* generic/domxslt.c: Fixed some memory problems, mostly in
case of erroneous stylesheets.
--- Release 0.7.7, 25. Mar. 2003 ---
2003-03-25 Rolf Ade <rolf@pointsman.de>
* configure.in
* configure
* configure-tcl8.0.5
* README
* README.AOL
* win/makefile.vc
* extensions/tnc/makefile.vc
* mac/Prefix/tDOMPrefix.h
* mac/Prefix/tDOMPrefix_OSX.h
* mac/tDOM_OSX.prj.xml: Bumped the version number to 0.7.7.
* generic/tcldom.c: Fixed error, which prevents building 0.7.6
with -DTCL_THREADS=1. (Arrrg.)
--- Release 0.7.6, 24. Mar. 2003 ---
2003-03-22 Rolf Ade <rolf@pointsman.de>
* mac/Prefix/tDOMPrefix.h
* mac/Prefix/tDOMPrefix_OSX.h
* mac/Prefix/tncPrefix.h
* mac/Prefix/tncPrefix_OSX.h
* mac/tDOM_OSX.prj.xml: Final tweaking for 0.7.6.
* expat/VERSION
* expat/expat.h: Updated to an after 1.95.6 version, which
fixes the problem, that some compilers had with the 1.95.6
version.
2003-03-22 Rolf Ade <rolf@pointsman.de>
* README
* README.AOL
* configure.in
* configure
* configure-tcl8.0.5
* mac/tDOM.r
* mac/tDOM_OSX.prj.xml
* mac/tnc.r
* extensions/tnc/makefile.vc: Updated to new version number 0.7.6.
* mac/tDOM/*: Added dir/files, to have a version number
independed output dir for the mac build.
* mac/tDOM.0.7.5/*
* mac/tDOM.0.7.5: Removed in favor of a version-less tDOM
output directory.
* configure
* configure.in: tdomstub_BUILD_SPEC must point to the
plattform specific build dir.
* generic/tcldom.h: Removed hard coded version number, uses
now VERSION define.
* win/makefile.vc
* win/makefile805.vc
* win/pkgIndex.tcl: Updated to new version 0.7.6.
* extensions/tnc/tnc.c
* extensions/tnc/tests/tnc.c: Added code needed to handle
effects of the -useForeignDTD option.
* doc/domNode.*
* generic/tcldom.c
* tests/dom.test: Renamed 'startBefore' method to the better
name 'precedes' and changed behavior: the method now
returns simply a boolean value.
2003-03-19 Rolf Ade <rolf@pointsman.de>
* generic/tcldom.c
* generic/domxslt.c
* generic/dom.h
* generic/dom.c: Replaced a few exit() code with Tcl_Panic(),
which ensures, that even windows users get a useful error
msg.
* generic/dom.c: Fixed a mem leak in handling external
entities.
* doc/expat.*
* doc/dom.*
* tests/domCmd.test
* tests/data/domCmd1.dtd
* tests/data/domCmd2.dtd
* tests/entity.test
* lib/tdom.tcl
* tests/domCmd.test
* generic/tclexpat.c
* generic/tcldom.c
* generic/domxslt.c
* generic/dom.h
* generic/dom.c: Added option -useForeignDTD to dom parse
and expat.
* generic/domxslt.c: Fixed several potential memory leaks
while processing erroneous stylesheets. Bug fix: added
missing memory clean to grouping-separator/grouping-size
support.
* generic/tcldom.c: Fixed potential memory problem while
processing erroneous stylesheet. Improved error msg in
case of script errors in the -externalentitycommand
script.
* doc/domNode.*
* tests/dom.test
* generic/tcldom.c: Added method 'startBefore', to compare the
relative order of two nodes out of the same document.
* generic/nodecmd.c: Added explicit memory clean up of the
nodecmd stack, to reduce 'noice' while memory leak
debugging.
* tests/dom.test: Added a reminder for a minor known memory
problem.
* tests/data/mondial-europe.xml: Added this file (used by the
usage example of xe).
* xe/xe-input: Changed pathes to point to the location of
mondial-europe.xml.
2003-03-19 Zoran Vasiljevic <zoran@archiware.com>
* Makefile.in: installs the tdomConfig.sh into the
$(libdir) whatever that points to.
2003-03-08 Zoran Vasiljevic <zoran@archiware.com>
* expt/internal.h: disabled FASTCALL & friends
since those do not work anywhere, as of my knowledge.
2003-03-06 Zoran Vasiljevic <zoran@archiware.com>
* generic/domalloc.c: removed include malloc.h since
not needed nor not found on macosx
* configure.in: adds "-lm" even when linking the shared image
since Starkit users need that. Also, fixed alternative libdir
usage when installing in non-standard (user-given) location.
* unix/CONFIG: new file. Adds some examples how to build
the extension on some common Unix platforms.
* mac: added Bernard CodeWarrior files for Mac builds.
* macosx: added directory where we will supply the ProjectBuilder
files (hopefully :)
2003-03-03 Rolf Ade <rolf@pointsman.de>
* tests/dom.test
* generic/tcldom.c: Fixed bug with using the 'domNode' cmd
without argument (spotted by Bernard Desgraupes).
2003-02-27 Rolf Ade <rolf@pointsman.de>
* generic/domxslt.c: xsl:number attributes grouping-separator
and grouping-size now also interpreted as attribute value
templates. (The last two (missing up to now only by mistake)
attribute value templates under the recognized xsl
attributes.)
2003-02-26 Rolf Ade <rolf@pointsman.de>
* generic/tcldom.c: Removed unused variables.
* lib/tdom.tcl
generic/dom.c: Improved ::tDOM::xml(Read|Open)File. Now
handles also utf-16 files with BOM right.
* generic/domxslt.c: Made some functions static. Removed a
TODO note, which already was done. Improved some error msgs
(now with line/column info, if avaliable). Bug fix:
xsltXPathFuncs must return -1 to signal error, because if
the source of the function call was inside of domxslt.c the
result code (rc) check rule is rc < 0. Fixed text in a
xsl:attribute error msg. Fixed memory leak in error case in
ExecAction, case forEach. Added a missing result code check
in ExecAction, case procinstr. Bug fix: Even literal result
element subtrees are relevant for xslt variable scope
(default case of ExecAction). Bug fix: the expression
context of the match expr of a xsl:template is the
xsl:template node. Now the xslt white space stripping is
done before the top level processing (was done after
toplevel processing).
2003-02-25 Rolf Ade <rolf@pointsman.de>
* expat/VERSION
* expat/internal.h: Applied post 1.95.6 patch, to fix compiler
warnings ("warning: `regparm' attribute directive ignored")
from gcc on Solaris.
2003-02-22 Rolf Ade <rolf@pointsman.de>
* generic/tcldom.c
* generic/tdom.decls
* generic/tdom.h
* generic/tdomDecls.h
* generic/tdomStubInit.c: Added tcldom_getNodeFromName(),
tcldom_getDocumentFromName() and the dom.h typdefs to the
tDOM stubs table. Needed for the new tnc feature (and
elsewhere, on the long run).
* doc/tnc.*
* extensions/tnc/configure
* extensions/tnc/configure.in
* extensions/tnc/makefile.vc
* extensions/tnc/test.tcl
* extensions/tnc/tnc.c: Added new tnc method getValidateCmd.
Changed to use the same memory allocator/free defines as
the tDOM core. Bumped the version to 0.3.
* extensions/tnc/tests
* extensions/tnc/tests/all.tcl
* extensions/tnc/tests/loadtnc.tcl
extensions/tnc/tests/tnc.test: Started test suite for the
tcl interface of the tnc command and the validator
commands.
* generic/tclexpat.c: Better eContents cleanup. Bug fix: of
course we have to call the parserResetProcs of the
registered C handler sets while reseting the expat parser
command.
* lib/tdom.tcl: Smaller fixes. Changed the values of the
system-properties xsl:vendor (included me) and
xsl:vendor-url (to http://www.tdom.org).
2003-02-22 Zoran Vasiljevic <zoran@archiware.com>
* generic/dom.h: Added (char*) cast to argument of Tcl_Free
in the FREE macro. This avoids some compiler warnings.
* generic/dom.c: Added some typecasts to MALLOC to avoid
compiler warnings.
2003-02-21 Rolf Ade <rolf@pointsman.de>
* generic/domxslt.c: Bug fixes: Return after detecting the
error (xsltPathFuncs), ensure that savedLastNode is always
set right (ExecAction, case copy). Editorial changes.
* configure.in
* Makefile.in
* configure
* configure-tcl8.0.5: Don't remove tdomConfig.sh with a 'make
clean', only with a 'make distclean'.
2003-02-09 Rolf Ade <rolf@pointsman.de>
* expat/*: Update to expat 1.95.6.
* apps/xslt.tcl: Updated to use the new -xsltmessagecmd option
of the xslt method and the -doctypeDeclaration of the
asXML/asHTML methods. Added a few comments.
2003-02-09 Rolf Ade <rolf@pointsman.de>
* generic/dom.c
* generic/dom.h
* generic/domxslt.c
* generic/tcldom.c
* doc/domDoc.*
* tests/domCmd.test: Public and system identifier information
are now stored (if parsed with the expat parser or generated
by the xslt engine, if given), exposed to the script level
(even writable, more than DOM 2 allows) and will be, on
demand, respected while serializing.
* generic/dom.c: Bug fix: Hold ID => node mapping consistent
even after resetting or removal of known ID attributes.
* generic/domxslt.c: Bug fix: invalid memory read.
* generic/tcldom.c: Bug fix: invalid memory read.
2003-01-30 Rolf Ade <rolf@pointsman.de>
* generic/dom.c
* generic/tcldom.c
* generic/xmlsimple.c
* tests/xslt.tests: Fixed bug reported by Wilhelm Klink
(http://groups.yahoo.com/group/tdom/message/404 see test
xslt-4.1). Again a problem (sideeffect) of renumbering
node->nodeNumber (which is necessary after modification of
the tree for some XPath expr to work). The keys of the
entries in the baseURIs hash table of the documents where
the nodeNumber of the (subtree root) nodes with new
baseURI. Since this nodeNumber isn't necessarily constant
over the lifetime of a node (because of the possibility of
re-numbering the tree), this could not work anymore. Instead
the nodeNumber, we now use the pointer to the node structure
as Key for the baseURIs hash table. This pointers stay
always constant, even if the nodeNumber changes. Additional
code was added to domFreeNode(), to ensure, that an entry in
the baseURIs hash table gets freed, if the related node is
in deed freed. Removed the yesterday added reseting of the
domUniqueNodeNr counter, because it turned out in testing,
that there are problems with sorting of resultSets, which
includes nodes from different documents (which may happen
with some special XSLT constructs (document() calls with a
nodeset as argument)). The reseting of the domUniqueNodeNr
is still desirable, but it turned out, that it should be
carefully considered, when it should be done.
2003-01-29 Rolf Ade <rolf@pointsman.de>
* generic/dom.c
* generic/tcldom.c
* tests/xslt.test: Changed escaping of serialized XML. The
previous behavior wasn't 'wrong', but now we do it along the
lines of almost all other (important) tools and it seems
there's al least some xslt code out there, which banks on
this 'common' way of serializing. Though, there is a small
risk, that this is an incompatible change for a few users.
* generic/dom.c
* generic/dom.h
* generic/xmlsimple.c
* tests/dom.test: Fixed the problem of 'changing node
references' under some circumstances (reported by Wilhelm
Klink). This also decrease the possibility of a potential
problem for extremely long running single threaded tDOM
applications.
* generic/dom.c
* generic/tcldom.c
* tests/dom.test: Fix for the problem with ownerDocument
reported by Oleg Oleinick (see test dom-29.1).
* generic/tcldom.c
* tests/dom.test: Fixed bug with COMMENT_NODEs while using the
asList method (problem reported by Ramon Rib). While at it,
also added code for handling processing instructions, which
was also missing, up to now.
2003-01-11 Rolf Ade <rolf@pointsman.de>
* generic/dom.c
* generic/dom.h
* generic/domxslt.c
* generic/domxslt.h
* generic/tcldom.c: Added conversion of XSLT stylesheet DOM
trees to 'cached' xslt cmds (new domDoc method
toXSLTcmd). Works for non threaded tcl; needs additional
work for multi-threaded tcl and documentation.
* generic/domxslt.c: Fixed a bug introduced during rework of
the white space stripping for XML sources.
* generic/tclexpat.c: Editorial change (Typo in comment)
2002-12-28 Rolf Ade <rolf@pointsman.de>
* generic/domxslt.c
* generic/domxslt.h
* generic/tcldom.c
* doc/domNode.*
* doc/domDoc.*
* tests/xslt.test: The xslt method now understands also the
options -ignoreUndeclaredParameters and -xsltmessagecmd.
* tests/xpath.test
* generic/tcldom.h: Editorial changes.
2002-12-23 Rolf Ade <rolf@pointsman.de>
* generic/domxslt.c: Reworked the white space stripping for XML
sources a bit. Better white space handling in token lists.
2002-12-21 Rolf Ade <rolf@pointsman.de>
* generic/domxpath.c: Fixed the changes by me in rev. 1.60 in
the XPath Lexer.
2002-12-20 Zoran Vasiljevic (zoran@archiware.com)
* generic/tcldom.c
* generic/dom.c
* generic/domxpath.c
* generic/domalloc.c
* generic/domhtml.c
* generic/docxpath.c: added DBG macro arround some fprintf's
2002-11-28 Rolf Ade <rolf@pointsman.de>
* generic/domxslt.c: Reuse already parsed trees only if it is
requested again for the same matter (as stylesheet or as
source dir), otherwise create a new tree, because of the
different white space stripping rules for stylesheets and
source documents.
2002-11-27 Rolf Ade <rolf@pointsman.de>
* win/makefile805.vc: Added this file. VC++ 6.0 makefile to
compile against tcl8.0.5, contributed by Sumit Pokhariyal.
* generic/domxpath.c: FQ names with a localname equal to a
XPath 'keyword' (for example ns1:div) are now recognized as
node test (they raised error up to now). Changed
generate-id() to return the more generic named 'id<idstr>'
instead of the up to now used 'node<idstr>'.
--- Release 0.7.5, 27. Nov. 2002 ---
2002-11-24 Rolf Ade <rolf@pointsman.de>
* Makefile.in: Changed the order of the include dirs, to avoid
clash with tcldom.h out of TclDOM-2.4, which will be
installed in the same directory as tcl.h
2002-11-22 Rolf Ade <rolf@pointsman.de>
* configure-tcl8.0.5: Added this file. Special configure for
Tcl8.0.5 users.
* README: Updated notes for Tcl8.0.5 users.
2002-11-21 Rolf Ade <rolf@pointsman.de>
* doc/expat.*: We don't have a 'provide expat' anymore, it's
all tdom. Fixed a typo.
2002-11-17 Rolf Ade <rolf@pointsman.de>
* generic/domxslt.c: Report error, if xsl:import elements not
come first.
* doc/tnc.*: Better wording.
2002-11-16 Rolf Ade <rolf@pointsman.de>
* win/makefile.vc
* extensions/tnc/makefile.vc: A bit final tweaking for 0.7.5.
2002-11-16 Zoran Vasiljevic <zoran@archiware.com>
* generic/dom.h
* generic/dom.c
* generic/tcldom.c
* generic/tclStubLib.c: fixed references to panic (now Tcl_Panic)
Also, fixed some 8.0.5 compilation issues.
* README: added some 8.0.5 compilation notes
2002-11-16 Rolf Ade <rolf@pointsman.de>
* generic/tcldom.c: Fixed bugs, which only raised there head
if compiled against tcl8.0.5.
* tests/all.tcl
* tests/loadtdom.tcl
* tests/domCmd.test
* tests/domnamespace.test
* tests/htmlreader.test
* tests/i18n.test
* tests/xmlsimple.test
* tests/xslt.test: Made test suite also running under
tcl8.0.5. Added constraint to the tests, which uses i18n tcl
features.
* doc/tnc.xml
* doc/tnc.html
* doc/tnc.n: Updated documentation.
2002-11-15 Zoran Vasiljevic <zoran@archiware.com>
* generic/dom.h: added IS_DELETED node flag
Changed domFreeNode to accept one additional parameter.
This parameter is used to signal the function to
perform node-walk and invoke user-supplied callback w/o
actually freeing the node. This functionality is required
for example when a thread detaches from the shared DOM tree
and wants to detach all eventual node commands from its
interpreter.
Added "struct domNode *deletedNodes" in the document structure
This is the head of all nodes spliced out of the tree but not
yet free'd. This is needed in order to avoid memory trashing
when one thread deletes the node and the second thread still
holds the reference to it over the nodecmd command.
Added "struct domNode *nextDeleted" to maintain the list of
deleted nodes, as explained above.
* generic/tcldom.c: introduced changes in the way nodes are
deleted from the tree in multi-threading shared-tree situations.
We now do not delete nodes having references from nodecmds from
different threads/interpreters. Instead, we put them on the
deleted nodes list and tear-down this list when we delete the
document.
* generic/tcldom.c: when a thread detaches from the shared dom tree
it will now properly delete all commands attached to nodes.
Also, the dom object command barks when attempting to use already
deleted node (the node put on the deletion list).
2002-11-15 Rolf Ade <rolf@pointsman.de>
* tests/dom.test: Added some tests for as yet not covered node
methods.
* tests/htmlreader.test: Minor fix: added tcltest cleanup.
* generic/tcldom.c: Changed 'attributes' method to return the
empty string as result for non element nodes, according to
the DOM 2 rec, chapter "Interface Node". Fixed a seg fault
in hasAttributeNS. Closed a mem leak in appendXML.
* lib/tdom.tcl: Added simple debugging feature to
tDOM::extRefHandler.
2002-11-14 Zoran Vasiljevic <zoran@archiware.com>
* generic/tcldom.c: fixed UMR report from Purify
2002-11-12 Rolf Ade <rolf@pointsman.de>
* win/makefile.vc
* extensions/tnc/makefile.vc: Updated to the new version nr
and the lib name convention of the new TEA 2 build system.
2002-11-09 Rolf Ade <rolf@pointsman.de>
* generic/tcldom.c: HTML serializer: No content escaping for
the HTML tags script and style, according to XSLT rec
16.2. Fixed a memory problem during interp deletion.
* generic/dom.c
* generic/domxpath.c: Minor changes.
2002-11-03 Rolf Ade <rolf@pointsman.de>
* lib/tdom.tcl: tDOM::xmlOpenFile fix for files < 4 Byte size.
* generic/domxpath.c
* generic/domxpath.h: Fixed ridiculously long runtime of
certain // expr on certain documents. During analysis and
testing, it turned out, that it would have been an even
simpler approach, to simply expand the abbreviation // in
the according productions. Though, the choosen implentation
seems often to be (slightly) faster and is a start to
collect experiences with early predicate evaluation.
2002-11-02 Zoran Vasiljevic <zoran@archiware.com>
* lib/tdomhtml.tcl: removed in favour of new tdom extension
* extensions/tdomhtml: added new tdom extension for HTML
generation based on tdomhtml.tcl and internal tdom
appendFromScript mechanism. This is a Tcl-only extension
which merely needs to be "make install"'ed.
* Makefile.in: removed traces of tdomhtml.tcl file since it
now lives in its own extension
* configure.in:
* configure: added TDOM_LD_SEARCH_FLAGS processing to help
runtime linker locate eventual custom shared libraries
2002-11-01 Rolf Ade <rolf@pointsman.de>
* Makefile.in: Fixed 'missing separator' problem (using tab
instead of white space).
* lib/tdom.tcl: Updated function-available, corrected
ridiculous typo by my (element-avaliable ->
element-available). Somewhat fixed and updated
element-available.
* generic/domxpath.c
* test/xpath.c: Full qualified XPath function names now are
accepted as syntactical correct expr. The function call is
resolved to the Tcl proc
dom::xpathFunc::<namespaceURI>::<functionLocalname>.
* generic/dom.c
* generic/dom.h
* generic/domxslt.c
* generic/nodecmd.c
* generic/tcldom.c
* test/xpath.test: Fixed old problem with Combine Set XPath
expressions and XSLT sorts on trees, in which new nodes are
inserted after the initial parsing (doc order of result).
2002-10-31 Zoran Vasiljevic <zoran@archiware.com>
* lib/tdom.tcl: does now "package require tdom" only,
instead of "package provide tdom 0.7.5".
The "package provide" with a correct version is
done by the C-module now (which is better).
Some cosmetic changes as well (keep 80-columns wide!).
* lib/tdomhtml.tcl: renamed version of domhtml.tcl
Also did some simplification in html2tcl, renamed some
internal private functions and added namespace-wide
definitions of html command names. The _2tcl procedure
now creates the missing elementNode commands as it
parses the html code, on the fly.
* Makefile.in: changed order of loads in the pkgIndex.tcl.
First the C-module is loaded, followed by the tdom.tcl
library file, followed by the tdomhtml.tcl library file.
Thus, the tdomhtml.tcl has become the first class citizen.
* CHANGES: added this file
2002-10-31 Rolf Ade <rolf@pointsman.de>
* generic/tcldom.c
* test/dom.test: Fixed argument check of domObj method
documentElement. Fixed domNode method appendFromList (wrong
list format could result in seg fault). Thanks to Oleg
Oleinick, for reporting both problems.
* generic/domxslt.c
* generic/domxpath.c
* generic/dom.c: Fixed mem leaks/possible invalid read
2002-10-30 Zoran Vasiljevic <zoran@archiware.com>
* generic/domxslt.c: added proper cast to arguments passed to
FREE() macro to avoid compiler barking at us.
2002-10-30 Rolf Ade <rolf@pointsman.de>
* generic/tcldom.c: Added -escapeNonASCII and -htmlEntities
also to node_usage and domObj_usage.
* extensions/tnc/test.tcl: Updated to use new tDOM
features. Made more usable.
* apps/xslt.tcl: Updated to using domDoc xslt method,
-escapeNonASCII for asXML and asHTML and additionally
-htmlEntities for asHTML.
* generic/domxslt.c: Implemented "Forwards-Compatible
Processing" (XSLT rec 2.5), with limitations: xsl:version
attributes on literal result elements are not
supported. Fixed a bug in XPath func
format-number(). XsltProcess now accepts also a
domDoc. Improved the setting of the documentElement of the
resultDoc.
2002-10-29 Rolf Ade <rolf@pointsman.de>
* generic/tcldom.c:
* doc/domDoc.*
* doc/domNode.*: Added -escapeNonASCII as option to the asXML
and asHTML methods and -htmlEntities as option to the asHTML
method. Added "xslt" method to domDoc commands.
* generic/dom.c: Better error reporting in case of parsing
errors in external entities.
* doc/expat.*: Fixed a documentation bug.
2002-10-29 Zoran Vasiljevic <zoran@archiware.com>
* generic/tcldom.c
* generic/nodecmd.c
* generic/nodecmd.h: modified "dom createNodeCmd" to accept the
-returnNodeCmd" optional argument. All commands created
with this option willreturn the dom object command for accessing
the generated node.
* ChangeLog: added this file
|