You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl-cvs@perl.apache.org by ri...@locus.apache.org on 2000/07/05 08:27:59 UTC

cvs commit: embperl Embperl.xs epcomp.c epdom.c epmain.c test.pl

richter     00/07/04 23:27:57

  Modified:    .        Tag: Embperl2 Embperl.xs epcomp.c epdom.c epmain.c
                        test.pl
  Log:
  Embperl 2
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.26.2.23 +5 -1      embperl/Embperl.xs
  
  Index: Embperl.xs
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl.xs,v
  retrieving revision 1.26.2.22
  retrieving revision 1.26.2.23
  diff -u -r1.26.2.22 -r1.26.2.23
  --- Embperl.xs	2000/06/27 05:31:36	1.26.2.22
  +++ Embperl.xs	2000/07/05 06:27:41	1.26.2.23
  @@ -697,10 +697,14 @@
       int nType
       SV * sText
   CODE:
  +    int xNewParent ;
       STRLEN nText ;
       char * sT = SV2String (sText, nText) ;
       tDomTree * pDomTree = DomTree_self(xDomTree) ;
  -    Node_appendChild (pDomTree, nType, 0, sT, nText, xParent, 0, 0) ;
  +    Node_self (pDomTree,xParent) -> bFlags |= nflgModified | nflgReturn ;
  +    xNewParent = Node_cloneNode (pDomTree, xParent, 1) ;
  +    DomTree_selfCheckpoint (pDomTree, xParent, xNewParent) ;
  +    Node_appendChild (pDomTree, nType, 0, sT, nText, xNewParent, 0, 0) ;
   
   
   void
  
  
  
  1.1.2.39  +3 -3      embperl/Attic/epcomp.c
  
  Index: epcomp.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epcomp.c,v
  retrieving revision 1.1.2.38
  retrieving revision 1.1.2.39
  diff -u -r1.1.2.38 -r1.1.2.39
  --- epcomp.c	2000/07/04 21:37:29	1.1.2.38
  +++ epcomp.c	2000/07/05 06:27:41	1.1.2.39
  @@ -1046,7 +1046,7 @@
   	r -> Buf.nSourceline = 0 ;
           return SvIVX(*ppSV) ;
           }
  -    else if (*ppSV == NULL || SvTYPE (*ppSV) != SVt_IV)
  +    else if (*ppSV == NULL || !SvIOKp (*ppSV) )
   	{
   	if ((rc = ParseFile (r)) != ok)
   	    {
  @@ -1076,7 +1076,7 @@
   
           pDomTree -> pSV = (SV *)newHV () ;
   	nLabelCnt = 1 ;
  -
  +	
   	if ((rc = embperl_CompileNode (pDomTree, r -> xDocument, &bCheckpointPending)) != ok)
   	    {
   	    *ppSV = newSVpvf ("%s\t%s", r -> errdat1, r -> errdat2) ;
  @@ -1130,7 +1130,7 @@
   	}
       else
   	{
  -	pDomTree = DomTree_self (SvIV (*ppSV)) ;
  +	pDomTree = DomTree_self (SvIVX (*ppSV)) ;
   	r -> xDocument = pDomTree -> xDocument ;
   	if ((rc = EvalStore (r, pProgRun, 0, &pSV)) != ok)
   	    return rc ;
  
  
  
  1.1.2.45  +14 -5     embperl/Attic/epdom.c
  
  Index: epdom.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epdom.c,v
  retrieving revision 1.1.2.44
  retrieving revision 1.1.2.45
  diff -u -r1.1.2.44 -r1.1.2.45
  --- epdom.c	2000/07/04 21:37:31	1.1.2.44
  +++ epdom.c	2000/07/05 06:27:44	1.1.2.45
  @@ -483,7 +483,7 @@
       memset (pDomTree, 0, sizeof (*pDomTree)) ;
       
       pSV = newSViv (n) ;
  -    sv_magic (pSV, NULL, 0, NULL, 0) ;
  +    sv_magic (pSV, pSV, 0, NULL, n) ;
       pMagic = mg_find (pSV, 0) ;
   
       if (pMagic)
  @@ -537,10 +537,21 @@
   
       {
       tNodePad * * pLookup = (tNodePad * *)pDomTree -> pLookup ;
  -    int        numLookup = ArrayGetSize (pLookup) ;
  +    int        numLookup  ;
       tIndex     xDomTree  = pDomTree -> xNdx ;
       tIndex     xNdx ;
   
  +    if (pCurrReq -> bDebug & dbgParse)
  +	lprintf (pCurrReq, "[%d]Delete: DomTree = %d SVs=%d\n", pCurrReq -> nPid, pDomTree -> xNdx, sv_count) ; 
  +
  +    if (!xDomTree)
  +	{
  +	if (pCurrReq -> bDebug & dbgParse)
  +	    lprintf (pCurrReq, "[%d]Delete: Already deleted DomTree = %d SVs=%d\n", pCurrReq -> nPid, pDomTree -> xNdx, sv_count) ; 
  +	return ok ;
  +	}
  +    
  +    numLookup = ArrayGetSize (pLookup) ;
       pLookup += numLookup - 1 ;
       while (numLookup-- > 0)
   	{
  @@ -606,9 +617,7 @@
   static int DomTree_free (SV * pSV, MAGIC * mg)
   
       {
  -    tIndex nNdx = SvIVX (pSV) ;
  -
  -    return DomTree_dodelete (DomTree_self (nNdx)) ;
  +    return DomTree_dodelete (DomTree_self (mg -> mg_len)) ;
       }
   
   /* ------------------------------------------------------------------------ */
  
  
  
  1.65.2.15 +5 -0      embperl/epmain.c
  
  Index: epmain.c
  ===================================================================
  RCS file: /home/cvs/embperl/epmain.c,v
  retrieving revision 1.65.2.14
  retrieving revision 1.65.2.15
  diff -u -r1.65.2.14 -r1.65.2.15
  --- epmain.c	2000/07/04 21:37:33	1.65.2.14
  +++ epmain.c	2000/07/05 06:27:45	1.65.2.15
  @@ -1689,6 +1689,11 @@
       if (pConf -> sCookiePath)
   	free (pConf -> sCookiePath) ;
   
  +    if (pConf -> sExpiresKey)
  +	free (pConf -> sExpiresKey) ;
  +
  +    if (pConf -> pExpiresCV)
  +	SvREFCNT_dec (pConf -> pExpiresCV) ;
   
       free (pConf) ;
       }
  
  
  
  1.57.2.33 +1 -1      embperl/test.pl
  
  Index: test.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test.pl,v
  retrieving revision 1.57.2.32
  retrieving revision 1.57.2.33
  diff -u -r1.57.2.32 -r1.57.2.33
  --- test.pl	2000/07/04 21:47:06	1.57.2.32
  +++ test.pl	2000/07/05 06:27:46	1.57.2.33
  @@ -616,7 +616,7 @@
   	{
   	@savetests = @tests ;
   	@tests = () ;
  -	while ($t = shift @ARGV)
  +	while (defined ($t = shift @ARGV))
   	    {
   	    push @tests, $savetests[$t] ;
   	    }