richter     00/10/30 13:07:37

  Modified:    .        Tag: Embperl2c epcomp.c epdat.h epmain.c test.pl
               eg/images Tag: Embperl2c jazzbkgd.gif
               test/cmp Tag: Embperl2c binary.htm
  Log:
  Embperl 2
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.4.2.12  +33 -35    embperl/Attic/epcomp.c
  
  Index: epcomp.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epcomp.c,v
  retrieving revision 1.4.2.11
  retrieving revision 1.4.2.12
  diff -u -r1.4.2.11 -r1.4.2.12
  --- epcomp.c  2000/10/26 06:35:58     1.4.2.11
  +++ epcomp.c  2000/10/30 21:07:27     1.4.2.12
  @@ -41,11 +41,7 @@
   
   typedef struct tEmbperlCmd tEmbperlCmd ;
   
  -char * * pProg = NULL ;
  -char * pProgRun = NULL ;
  -char * pProgDef = NULL ;
   
  -int nLabelCnt ;
   
   tStringIndex nMaxEmbperlCmd ;
   struct tEmbperlCmd * pEmbperlCmds ;
  @@ -850,15 +846,15 @@
                        {
                        int l2 = sprintf (buf, "#line %d \"", pNode ->  nLinenumber) ;
   
  -                     StringAdd (pProg, buf, l2) ;
  -                     StringAdd (pProg, sSourcefile, nSourcefile) ;
  -                     StringAdd (pProg, "\"\n", 2) ;
  +                     StringAdd (r -> pProg, buf, l2) ;
  +                     StringAdd (r -> pProg, sSourcefile, nSourcefile) ;
  +                     StringAdd (r -> pProg, "\"\n", 2) ;
                        }
   
                    if (pCmd -> bPerlCodeRemove)
  -                     *nStartCodeOffset = StringAdd (pProg, " ", 1) ;
  -                 StringAdd (pProg, pCode, l) ;
  -                 StringAdd (pProg, "\n",  1) ;
  +                     *nStartCodeOffset = StringAdd (r -> pProg, " ", 1) ;
  +                 StringAdd (r -> pProg, pCode, l) ;
  +                 StringAdd (r -> pProg, "\n",  1) ;
                    if (pCurrReq -> bDebug & dbgParse)
                        lprintf (pCurrReq, "[%d]EPCOMP: #%d L%d Code:    %*.*s\n", 
pCurrReq -> nPid, pNode -> xNdx, pNode -> nLinenumber, l, l, pCode) ;
                    }
  @@ -915,7 +911,7 @@
   
       if (nCheckpointCodeOffset && (pNode -> bFlags == 0 || (pNode -> bFlags & 
nflgIgnore)))
        {
  -     (*pProg)[nCheckpointCodeOffset] = '#' ;
  +     (*r -> pProg)[nCheckpointCodeOffset] = '#' ;
        if (pCurrReq -> bDebug & dbgParse)
            lprintf (pCurrReq, "[%d]EPCOMP: #%d L%d Remove Checkpoint\n", pCurrReq -> 
nPid, pNode -> xNdx, pNode -> nLinenumber) ;
        nCheckpointCodeOffset = 0 ;
  @@ -930,7 +926,7 @@
        pNode -> bFlags |= nflgCheckpoint ;
        //l = sprintf (buf, " _ep_cp($_ep_DomTree,%d) ;\n", 
*bCheckpointPending<0?pNode -> xNdx:*bCheckpointPending) ;
        l = sprintf (buf, " _ep_cp($_ep_DomTree,%d) ;\n", pNode -> xNdx) ;
  -     nCheckpointCodeOffset = StringAdd (pProg, buf,  l) ;
  +     nCheckpointCodeOffset = StringAdd (r -> pProg, buf,     l) ;
        *bCheckpointPending = 0 ;
   
        if (pCurrReq -> bDebug & dbgParse)
  @@ -1012,8 +1008,8 @@
                   int l = ArrayGetSize (pCode) ;
                   if (l)
                       {
  -                 StringAdd (pProg, pCode, l) ;
  -                 StringAdd (pProg, "\n",  1) ; 
  +                 StringAdd (r -> pProg, pCode, l) ;
  +                 StringAdd (r -> pProg, "\n",  1) ; 
                    if (pCurrReq -> bDebug & dbgParse)
                        lprintf (pCurrReq, "[%d]EPCOMP: #%d L%d Codeend: %*.*s\n", 
pCurrReq -> nPid, pNode -> xNdx, pNode -> nLinenumber, l, l, pCode) ; 
                    }
  @@ -1023,7 +1019,7 @@
            {
            if (pCmd -> bPerlCodeRemove && nStartCodeOffset)
                {
  -             (*pProg)[nStartCodeOffset] = '#' ;
  +             (*r -> pProg)[nStartCodeOffset] = '#' ;
                if (pCurrReq -> bDebug & dbgParse)
                    lprintf (pCurrReq, "[%d]EPCOMP: #%d L%d Remove Codeblock\n", 
pCurrReq -> nPid, pNode -> xNdx, pNode -> nLinenumber) ; 
                }
  @@ -1054,7 +1050,7 @@
     
        if (pCmd -> nSwitchCodeType == 1)
               {
  -            pProg = &pProgRun ;
  +            r -> pProg = &r -> pProgRun ;
            *bCheckpointPending = -1 ;
            if (pCurrReq -> bDebug & dbgParse)
                lprintf (pCurrReq, "[%d]EPCOMP: #%d L%d Set Checkpoint pending (switch 
to ProgRun)\n", pCurrReq -> nPid, pNode -> xNdx, pNode -> nLinenumber) ;
  @@ -1125,7 +1121,7 @@
        pNode -> bFlags |= nflgCheckpoint ;
        //l = sprintf (buf, " _ep_cp($_ep_DomTree,%d) ;\n", 
*bCheckpointPending<0?pNode -> xNdx:*bCheckpointPending) ;
        l = sprintf (buf, " _ep_cp($_ep_DomTree,%d) ;\n", pNode -> xNdx) ;
  -     nCheckpointCodeOffset = StringAdd (pProg, buf,  l) ; 
  +     nCheckpointCodeOffset = StringAdd (r -> pProg, buf,  l) ; 
        *bCheckpointPending = 0 ;
   
        if (pCurrReq -> bDebug & dbgParse)
  @@ -1135,7 +1131,7 @@
   
       if (pCmd && pCmd -> nSwitchCodeType == 2)
           {
  -        pProg = &pProgDef ;
  +        r -> pProg = &r -> pProgDef ;
           nCheckpointCodeOffset = 0 ;
           }
        
  @@ -1264,12 +1260,14 @@
           return ok ;
           }
   
  -    StringNew (&pProgRun, r -> Buf.pFile -> nFilesize / 4) ;
  -    StringNew (&pProgDef, r -> Buf.pFile -> nFilesize / 4) ;
  -    pProg = &pProgRun ;
  +    r -> pProgRun = NULL ;
  +    r -> pProgDef = NULL ;
   
  +    StringNew (&r -> pProgRun, r -> Buf.pFile -> nFilesize / 4) ;
  +    StringNew (&r -> pProgDef, r -> Buf.pFile -> nFilesize / 4) ;
  +    r -> pProg = &r -> pProgRun ;
  +
       pDomTree -> pSV = (SV *)newHV () ;
  -    nLabelCnt = 1 ;
       
       if ((rc = embperl_CompileDomTree (r, pProcessor, pDomTree)) != ok)
        {
  @@ -1283,8 +1281,8 @@
            r -> xCurrDomTree = 0 ;
            }
        */
  -        StringFree (&pProgRun) ;
  -     StringFree (&pProgDef) ;
  +        StringFree (&r -> pProgRun) ;
  +     StringFree (&r -> pProgDef) ;
        
        return rc ;
        }
  @@ -1292,18 +1290,18 @@
       SvREFCNT_dec (pDomTree -> pSV) ;
       pDomTree -> pSV = NULL ;
   
  -    StringAdd (&pProgRun, "", 1) ;
  -    StringAdd (&pProgDef, "", 1) ;
  +    StringAdd (&r -> pProgRun, "", 1) ;
  +    StringAdd (&r -> pProgDef, "", 1) ;
   
       cl2 = clock () ;
   
       r -> nPhase  = phRunAfterCompile ;
       
  -    l = ArrayGetSize (pProgDef) ;
  +    l = ArrayGetSize (r -> pProgDef) ;
       if (l && pCurrReq -> bDebug & dbgParse)
  -     lprintf (r, "[%d]EPCOMP: AfterCompileTimeCode:    %*.*s\n", r -> nPid, l, l, 
pProgDef) ; 
  +     lprintf (r, "[%d]EPCOMP: AfterCompileTimeCode:    %*.*s\n", r -> nPid, l, l, r 
-> pProgDef) ; 
   
  -    pSV = newSVpvf("package %s ; \nmy ($_ep_req, $ep_DomTree) = @_;\n%*.*s", r -> 
Buf.sEvalPackage, l,l, pProgDef) ;
  +    pSV = newSVpvf("package %s ; \nmy ($_ep_req, $ep_DomTree) = @_;\n%*.*s", r -> 
Buf.sEvalPackage, l,l, r -> pProgDef) ;
       args[0] = r -> pReqSV ;
       args[1] = pDomTree -> pDomTreeSV ;
       if ((rc = EvalDirect (r, pSV, 2, args)) != ok)
  @@ -1314,7 +1312,7 @@
       
       r -> nPhase  = phPerlCompile ;
   
  -    if ((rc = EvalOnly (r, pProgRun, ppCompResult, G_SCALAR, "")) != ok)
  +    if ((rc = EvalOnly (r, r -> pProgRun, ppCompResult, G_SCALAR, "")) != ok)
        return rc ;
   
       cl4 = clock () ;
  @@ -1329,8 +1327,8 @@
        }
   #endif        
   
  -    StringFree (&pProgRun) ;
  -    StringFree (&pProgDef) ;
  +    StringFree (&r -> pProgRun) ;
  +    StringFree (&r -> pProgDef) ;
   
       return ok ;
       }
  @@ -1469,11 +1467,11 @@
            if (sSubName)
                {
                SV * pSVName = newSVpvf ("%s::%s", r -> Buf.sEvalPackage, sSubName) ;
  -             rc = CallStoredCV (r, pProgRun, (CV *)pSVName, 1, args, 0, &pSV) ;
  +             rc = CallStoredCV (r, r -> pProgRun, (CV *)pSVName, 1, args, 0, &pSV) ;
                }
            else
                {
  -             rc = CallStoredCV (r, pProgRun, (CV *)pCV, 1, args, 0, &pSV) ;
  +             rc = CallStoredCV (r, r -> pProgRun, (CV *)pCV, 1, args, 0, &pSV) ;
                if (pSV)
                    SvREFCNT_dec (pSV) ;
                }
  @@ -1695,7 +1693,7 @@
        pProcessor = pProcessor -> pNext ;
           }
   
  -    if (!r -> bError)
  +    if (!r -> bError && !r -> pImportStash)
           {
   
        pProcessor = pFirstProcessor ;
  
  
  
  1.20.4.7  +9 -0      embperl/epdat.h
  
  Index: epdat.h
  ===================================================================
  RCS file: /home/cvs/embperl/epdat.h,v
  retrieving revision 1.20.4.6
  retrieving revision 1.20.4.7
  diff -u -r1.20.4.6 -r1.20.4.7
  --- epdat.h   2000/10/25 08:08:18     1.20.4.6
  +++ epdat.h   2000/10/30 21:07:28     1.20.4.7
  @@ -464,6 +464,15 @@
       char op_mask_buf[MAXO + 100]; /* save buffer for opcode mask - maxo shouldn't 
differ from MAXO but leave room anyway (see BOOT:) */
   
       HV *  pImportStash ;     /* stash for package, where new macros should be 
imported */
  +
  +#ifdef EP2
  +    
  +    char * * pProg ;            /* pointer into currently compiled code */
  +    char * pProgRun ;           /* pointer into currently compiled run code */
  +    char * pProgDef ;           /* pointer into currently compiled define code */
  +
  +#endif
  +
       } ;
   
   
  
  
  
  1.75.4.8  +1 -1      embperl/epmain.c
  
  Index: epmain.c
  ===================================================================
  RCS file: /home/cvs/embperl/epmain.c,v
  retrieving revision 1.75.4.7
  retrieving revision 1.75.4.8
  diff -u -r1.75.4.7 -r1.75.4.8
  --- epmain.c  2000/10/25 08:08:18     1.75.4.7
  +++ epmain.c  2000/10/30 21:07:28     1.75.4.8
  @@ -2754,7 +2754,7 @@
                    }
                else
                    {
  -                 if (!bError)
  +                 if (!bError && !r -> pImportStash)
                        {
                        tDomTree * pDomTree = DomTree_self (r -> xCurrDomTree) ;
                        Node_replaceChildWithNode (pDomTree, pDomTree -> xDocument, 
DomTree_self (l -> xCurrDomTree), l -> xCurrNode) ;
  
  
  
  1.70.4.13 +1 -218    embperl/test.pl
  
  Index: test.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test.pl,v
  retrieving revision 1.70.4.12
  retrieving revision 1.70.4.13
  diff -u -r1.70.4.12 -r1.70.4.13
  --- test.pl   2000/10/26 07:32:52     1.70.4.12
  +++ test.pl   2000/10/30 21:07:29     1.70.4.13
  @@ -194,7 +194,7 @@
           'repeat'     => 2,
           },
       'importsub.htm' => { 
  -        'version'    => 1,
  +#        'version'    => 1,
           'repeat'     => 2,
           },
       'importsub2.htm' => { 
  @@ -419,223 +419,6 @@
       }
   
   
  -=pod
  -@tests = (
  -    'ascii',
  -    'pure.htm',
  -    'plain.htm',
  -    'plain.htm',
  -    'plain.htm',
  -    'plainblock.htm',
  -    'plainblock.htm',
  -    'error.htm???8',
  -    'error.htm???8',
  -    'error.htm???8',
  -    'unclosed.htm???1',
  -#    'errorright.htm???1',
  -    'notfound.htm???1',
  -    'notallow.xhtm???1',
  -    'noerr/noerrpage.htm???8?2',
  -    'errdoc/errdoc.htm???8?262144',
  -    'errdoc/epl/errdoc2.htm???8?262144',
  -    'rawinput/rawinput.htm????16',
  -    'var.htm',
  -    'varerr.htm???-1',
  -    'varerr.htm???2',
  -    'escape.htm',
  -    'escape.htm',
  -    'spaces.htm',
  -    'tagscan.htm',
  -    'tagscan.htm??1',
  -    'if.htm',
  -    'ifperl.htm',
  -    
'loop.htm?erstes=Hallo&zweites=Leer+zeichen&drittes=%21%22%23%2a%2B&erstes=Wert2',
  -    'loopperl.htm?erstes=Hallo&zweites=Leer+zeichen&drittes=%21%22%23&erstes=Wert2',
  -    'table.htm',
  -    'table.htm??1',
  -    'lists.htm?sel=2&SEL1=B&SEL3=D&SEL4=cc',
  -    'mix.htm',
  -    'nesting.htm',
  -    'object.htm???2',
  -    'discard.htm???12',
  -    
'input.htm?feld5=Wert5&feld6=Wert6&feld7=Wert7&feld8=Wert8&cb5=cbv5&cb6=cbv6&cb7=cbv7&cb8=cbv8&cb9=ncbv9&cb10=ncbv10&cb11=ncbv11&mult=Wert3&mult=Wert6&esc=a<b&escmult=a>b&escmult=Wert3',
  -    'hidden.htm?feld1=Wert1&feld2=Wert2&feld3=Wert3&feld4=Wert4',
  -    'java.htm',
  -    'inputjava.htm',
  -    'post.htm',
  -    'upload.htm?multval=A&multval=B&multval=C&single=S',
  -    'reqrec.htm',
  -    'reqrec.htm',
  -    'include.htm',
  -    'includeerr1.htm???1',
  -    'includeerr2.htm???4',
  -    'registry/Execute.htm',
  -    'registry/errpage.htm???16',
  -    'registry/tied.htm???3',
  -    'registry/tied.htm???3',
  -#    'registry/subreq2.htm',
  -    'callsub.htm',
  -    'callsub.htm',
  -    'importsub.htm',
  -    'importsub.htm',
  -    'importsub2.htm',
  -    'importmodule.htm',
  -    'recursexec.htm',
  -    'nph/div.htm????64',
  -    'nph/npherr.htm???8?64',
  -    'nph/nphinc.htm????64',
  -    'sub.htm',
  -    'sub.htm',
  -    'exit.htm',
  -    'exit2.htm',
  -    'exit3.htm',
  -    'chdir.htm?a=1&b=2&c=&d=&f=5&g&h=7&=8&=',
  -    'chdir.htm?a=1&b=2&c=&d=&f=5&g&h=7&=8&=',
  -    'allform/allform.htm?a=1&b=2&c=&d=&f=5&g&h=7&=8&=???8192',
  -    'stdout/stdout.htm????16384',
  -    'nochdir/nochdir.htm?a=1&b=2???384',
  -    'match/div.htm',
  -    'match/div.asc',
  -    'http.htm',
  -    'div.htm',
  -    'taint.htm???1',
  -    'ofunc/div.htm',
  -    'safe/safe.htm???-1?4',
  -    'safe/safe.htm???-1?4',
  -    'safe/safe.htm???-1?4',
  -    'opmask/opmask.htm???-1?12?TEST',
  -    'opmask/opmasktrap.htm???2?12?TEST',
  -    'mdatsess.htm?cnt=0',
  -    'setsess.htm?a=1',
  -    'mdatsess.htm?cnt=1',
  -    'getnosess.htm?nocookie=2',
  -    'mdatsess.htm?cnt=2',
  -    'getsess.htm',
  -    'mdatsess.htm?cnt=3',
  -    'execgetsess.htm',
  -    'registry/reggetsess.htm',
  -    'getsess.htm',
  -    'delsess.htm',
  -    'getdelsess.htm',
  -    'clearsess.htm',
  -    'EmbperlObject/epopage1.htm',
  -    'EmbperlObject/epodiv.htm',
  -    'EmbperlObject/sub/epopage2.htm',
  -    'EmbperlObject/sub/epopage2.htm',
  -    'EmbperlObject/sub/eponotfound.htm',
  -    'EmbperlObject/obj/epoobj1.htm',
  -    'EmbperlObject/obj/epoobj2.htm',
  -    'EmbperlObject/obj/epoobj3.htm',
  -    'EmbperlObject/obj/epoobj4.htm',
  -    'EmbperlObject/base2/epostopdir.htm',
  -    'EmbperlObject/base3/epobaselib.htm',
  -    ) ;
  -
  -@tests2 = (
  -    'ascii',
  -#    'tmp/header.htm',
  -    'pure.htm',
  -##    'plainlong.htm',
  -##    'plainlong.htm',
  -##    'plainlong.htm',
  -##    'plainlong.htm',
  -    'plain.htm',
  -    'plain.htm',
  -    'plain.htm',
  -    'plainblock.htm',
  -    'plainblock.htm',
  -    'error.htm???7',
  -    'error.htm???7',
  -    'error.htm???7',
  -    'errormismatch.htm???1',
  -    'errormismatchcmd.htm???1',
  -    'unclosed.htm???1',
  -#    'errorright.htm???1',
  -    'notfound.htm???1',
  -    'notallow.xhtm???1',
  -##    'noerr/noerrpage.htm???6?2',
  -##    'errdoc/errdoc.htm???8?262144',
  -##    'rawinput/rawinput.htm????16',
  -    'var.htm',
  -    'varerr.htm???-1',
  -##    'varerr.htm???2',
  -    'escape.htm',
  -    'escape.htm',
  -##    'spaces.htm',
  -    'tagscan.htm',
  -    'tagscan.htm??1',
  -    'if.htm',
  -    'ifperl.htm',
  -    
'loop.htm?erstes=Hallo&zweites=Leer+zeichen&drittes=%21%22%23%2a%2B&erstes=Wert2',
  -    
'loop.htm?erstes=Hallo&zweites=Leer+zeichen&drittes=%21%22%23%2a%2B&erstes=Wert2',
  -    'loopperl.htm?erstes=Hallo&zweites=Leer+zeichen&drittes=%21%22%23&erstes=Wert2',
  -    'table.htm',
  -    'table.htm??1',
  -    'lists.htm?sel=2&SEL1=B&SEL3=D&SEL4=cc',
  -    'lists.htm?sel=2&SEL1=B&SEL3=D&SEL4=cc',
  -    'mix.htm',
  -##    'nesting.htm',
  -    'object.htm',
  -##    'discard.htm???12',
  -    
'input.htm?feld5=Wert5&feld6=Wert6&feld7=Wert7&feld8=Wert8&cb5=cbv5&cb6=cbv6&cb7=cbv7&cb8=cbv8&cb9=ncbv9&cb10=ncbv10&cb11=ncbv11&mult=Wert3&mult=Wert6&esc=a<b&escmult=a>b&escmult=Wert3',
  -    'hidden.htm?feld1=Wert1&feld2=Wert2&feld3=Wert3&feld4=Wert4',
  -    'java.htm',
  -    'inputjava.htm',
  -    'post.htm',
  -    'upload.htm?multval=A&multval=B&multval=C&single=S',
  -    'reqrec.htm',
  -    'reqrec.htm',
  -    'rawinput/include.htm????16',
  -    'includeerr1.htm???1',
  -    'includeerr2.htm???1',
  -    'registry/Execute.htm',
  -##    'registry/errpage.htm???16',
  -    'registry/tied.htm???3',
  -    'registry/tied.htm???3',
  -##    'callsub.htm',
  -##    'callsub.htm',
  -##    'importsub.htm',
  -##    'importsub.htm',
  -##    'importsub2.htm',
  -##    'importmodule.htm',
  -##    'recursexec.htm',
  -    'nph/div.htm????64',
  -##    'nph/npherr.htm???8?64',
  -    'nph/nphinc.htm????64',
  -    'sub.htm',
  -    'sub.htm',
  -##    'exit.htm',
  -##    'exit2.htm',
  -##    'exit3.htm',
  -    'chdir.htm?a=1&b=2&c=&d=&f=5&g&h=7&=8&=',
  -    'chdir.htm?a=1&b=2&c=&d=&f=5&g&h=7&=8&=',
  -    'allform/allform.htm?a=1&b=2&c=&d=&f=5&g&h=7&=8&=???8192',
  -##    'stdout/stdout.htm????16384',
  -    'nochdir/nochdir.htm?a=1&b=2???384',
  -    'match/div.htm',
  -    'match/div.asc',
  -##    'http.htm',
  -    'div.htm',
  -    'taint.htm???1',
  -    'ofunc/div.htm',
  -##    'safe/safe.htm???-1?4',
  -##    'safe/safe.htm???-1?4',
  -##    'safe/safe.htm???-1?4',
  -##    'opmask/opmask.htm???-1?12?TEST',
  -##    'opmask/opmasktrap.htm???2?12?TEST',
  -    'mdatsess.htm?cnt=0',
  -    'setsess.htm?a=1',
  -    'mdatsess.htm?cnt=1',
  -    'getnosess.htm?nocookie=2',
  -    'mdatsess.htm?cnt=2',
  -    'getsess.htm',
  -    'mdatsess.htm?cnt=3',
  -    'execgetsess.htm',
  -    'clearsess.htm',
  -    'EmbperlObject/epopage1.htm',
  -##    'EmbperlObject/sub/epopage2.htm',
  -    ) ;
  -=cut
   
   # avoid some warnings:
   
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.1.6.1 +1 -16     embperl/eg/images/jazzbkgd.gif
  
        <<Binary file>>
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.2   +1 -2      embperl/test/cmp/binary.htm
  
        <<Binary file>>
  
  

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

Reply via email to