richter     00/07/05 00:39:12

  Modified:    .        Tag: Embperl2 epdom.c
  Log:
  EMbperl 2
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.46  +12 -2     embperl/Attic/epdom.c
  
  Index: epdom.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epdom.c,v
  retrieving revision 1.1.2.45
  retrieving revision 1.1.2.46
  diff -u -r1.1.2.45 -r1.1.2.46
  --- epdom.c   2000/07/05 06:27:44     1.1.2.45
  +++ epdom.c   2000/07/05 07:38:54     1.1.2.46
  @@ -1747,6 +1747,7 @@
       int   bCheckpointFound = 0  ;
       tNodeData * pNextNode ;
       tNodeData * pSavedNode = NULL ;
  +    tNodeData * pSavedNodeFrom = NULL ;
       tNodeData * pLastStartTag = NULL ;
       tNodeData * pNode = Node_self (pDomTree, xNode) ;
       tNodeData * pFirstNode = pNode ;
  @@ -1813,6 +1814,7 @@
                    lprintf (r, "[%d]toString: Replace Node=%d with Node=%d\n", r -> 
nPid, pNode -> xNdx, xNextNode) ; 
                pSavedNode = pNode ;    
                pNode  = Node_self (pDomTree, xNextNode) ;
  +             pSavedNodeFrom = pNode ;    
                }
            if (i == nOrderNdx)
                nOrderNdx++, nOrderIndexNode = -1 ;
  @@ -1911,8 +1913,12 @@
            pNextNode = Node_selfFirstChild (pDomTree, pNode) ;
        if (pNextNode == NULL)
            {
  -         if (pSavedNode)
  +         if (pSavedNode && pSavedNodeFrom == pNode)
  +             {
                pNode = pSavedNode ;
  +             pSavedNode = NULL ;
  +             }
  +
        
            pNextNode  = Node_selfNextSibling (pDomTree, pNode) ;
            while (pNextNode == NULL)
  @@ -1924,6 +1930,11 @@
                       return bCheckpointFound?pNextNode:NULL ;
                       }
                    
  +             if (pSavedNode && pSavedNodeFrom == pNextNode)
  +                 {
  +                 pNextNode = pSavedNode ;
  +                 pSavedNode = NULL ;
  +                 }
                pNode = pNextNode ;
                pNextNode  = Node_selfNextSibling (pDomTree, pNextNode) ;
                if (pNode -> nType == ntypStartTag && (pNode -> bFlags & nflgIgnore) 
== 0 &&
  @@ -1936,7 +1947,6 @@
                    }
                }
            }
  -     pSavedNode = NULL ;
        pNode = pNextNode ;
        }
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to