Ignore:
Timestamp:
Jul 6, 2002, 11:12:59 PM (23 years ago)
Author:
umoeller
Message:

Some Unicode fixes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/helpers/xml.c

    r169 r186  
    26012601}
    26022602
     2603#ifdef __DEBUG__
     2604
     2605/*
     2606 *@@ Dump:
     2607 *
     2608 *@@added V0.9.20 (2002-07-03) [umoeller]
     2609 */
     2610
     2611static VOID Dump(int iIndent,
     2612                 PDOMNODE pDomNode)
     2613{
     2614    PLISTNODE pChildNode;
     2615    int i;
     2616    for (i = 0;
     2617         i < iIndent;
     2618         ++i)
     2619    {
     2620        printf(" ");
     2621    }
     2622
     2623    switch (pDomNode->NodeBase.ulNodeType)
     2624    {
     2625        #define DUMPTYPE(t) case t: printf(#t); break;
     2626        DUMPTYPE(DOMNODE_ELEMENT)
     2627        DUMPTYPE(DOMNODE_ATTRIBUTE)
     2628        DUMPTYPE(DOMNODE_TEXT)
     2629        DUMPTYPE(DOMNODE_PROCESSING_INSTRUCTION)
     2630        DUMPTYPE(DOMNODE_COMMENT)
     2631        DUMPTYPE(DOMNODE_DOCUMENT)
     2632        DUMPTYPE(DOMNODE_DOCUMENT_TYPE)
     2633        DUMPTYPE(ELEMENTPARTICLE_EMPTY)
     2634        DUMPTYPE(ELEMENTPARTICLE_ANY)
     2635        DUMPTYPE(ELEMENTPARTICLE_MIXED)
     2636        DUMPTYPE(ELEMENTPARTICLE_CHOICE)
     2637        DUMPTYPE(ELEMENTPARTICLE_SEQ)
     2638        DUMPTYPE(ELEMENTPARTICLE_NAME)
     2639        DUMPTYPE(ATTRIBUTE_DECLARATION_BASE)
     2640        DUMPTYPE(ATTRIBUTE_DECLARATION)
     2641        DUMPTYPE(ATTRIBUTE_DECLARATION_ENUM)
     2642    }
     2643
     2644    printf(" \"%s\"\n", STRINGORNULL(pDomNode->NodeBase.strNodeName.psz));
     2645
     2646    ++iIndent;
     2647    for (pChildNode = lstQueryFirstNode(&pDomNode->llChildren);
     2648         pChildNode;
     2649         pChildNode = pChildNode->pNext)
     2650    {
     2651        Dump(iIndent, (PDOMNODE)pChildNode->pItemData);
     2652    }
     2653    --iIndent;
     2654}
     2655
     2656#endif
     2657
     2658/*
     2659 *@@ xmlDump:
     2660 *      debug function which dumps the DOM to stdout.
     2661 *
     2662 *@@added V0.9.20 (2002-07-03) [umoeller]
     2663 */
     2664
     2665VOID xmlDump(PXMLDOM pDom)
     2666{
     2667#ifdef __DEBUG__
     2668    if (!pDom)
     2669    {
     2670        printf(__FUNCTION__ ": pDom is NULL\n");
     2671        return;
     2672    }
     2673
     2674    printf(__FUNCTION__ ": dumping document node ");
     2675
     2676    Dump(0, (PDOMNODE)pDom->pDocumentNode);
     2677#endif
     2678}
     2679
    26032680/*
    26042681 *@@ xmlFreeDOM:
     
    27462823 *
    27472824 *@@added V0.9.11 (2001-04-22) [umoeller]
     2825 *@@changed V0.9.20 (2002-07-03) [umoeller]: this never worked with DTDs, fixed
    27482826 */
    27492827
     
    27572835       )
    27582836    {
    2759         return ((PDOMNODE)pListNode->pItemData);
     2837        // V0.9.20 (2002-07-03) [umoeller]:
     2838        // we can't just return the first node on the
     2839        // list, because if we have DTD, this might
     2840        // be the doctype... so loop until we find
     2841        // an element, which must be the root element
     2842        while (pListNode)
     2843        {
     2844            PDOMNODE pDomNode = (PDOMNODE)pListNode->pItemData;
     2845            if (pDomNode->NodeBase.ulNodeType == DOMNODE_ELEMENT)
     2846                return (pDomNode);
     2847
     2848            pListNode = pListNode->pNext;
     2849        }
    27602850    }
    27612851
     
    28432933                                  const char *pcszName)
    28442934{
    2845     // APIRET arc = NO_ERROR;
    2846 
    28472935    PLINKLIST pll = lstCreate(FALSE);       // no free
    28482936    if (pll)
Note: See TracChangeset for help on using the changeset viewer.