Hi, > Subject: crash with simple template >
Thanks for the test case. The attached patch fixes the problem. It's also fixed
in the SVN version
Gerald
> Hello embperl,
>
> OS: CentoS 4.4/x86_64
> Embperl: 2.2.0
> Template: in attache
>
> (gdb) run ./embpexec.pl crash.html.1
> Starting program: /usr/bin/perl ./embpexec.pl crash.html.1
> (no debugging symbols found) (no debugging symbols found) (no
> debugging symbols found) (no debugging symbols found) (no
> debugging symbols found) (no debugging symbols found) (no
> debugging symbols found) (no debugging symbols found) [Thread
> debugging using libthread_db enabled] [New Thread
> 182908350080 (LWP 28855)] (no debugging symbols found) (no
> debugging symbols found) (no debugging symbols found)
>
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 182908350080 (LWP 28855)]
> 0x0000002a992af8f7 in EMBPERL2_Attr_selfValue (a=0x6f8730,
> pDomTree=0x81a638, pAttr=0x95fda8, nRepeatLevel=0,
> ppAttr=0x7fbffff0c8) at epdom.c:4330
> 4330 return Ndx2String (pAttr -> xValue) ;
> (gdb) bt
> #0 0x0000002a992af8f7 in EMBPERL2_Attr_selfValue
> (a=0x6f8730, pDomTree=0x81a638, pAttr=0x95fda8,
> nRepeatLevel=0, ppAttr=0x7fbffff0c8) at epdom.c:4330
> #1 0x0000002a99290f50 in XS_XML__Embperl__DOM__Attr_iValue
> (my_perl=0x504010, cv=Variable "cv" is not available.
> ) at DOM.xs:408
> #2 0x0000002a9570a91b in Perl_pp_entersub () from
> /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/CORE/libperl.so
> #3 0x0000002a956ee86a in Perl_runops_debug () from
> /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/CORE/libperl.so
> #4 0x0000002a956a6851 in Perl_call_sv () from
> /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/CORE/libperl.so
> #5 0x0000002a9929bc1d in EMBPERL2_CallStoredCV (r=0x8a6a30,
> sArg=Variable "sArg" is not available.
> ) at epeval.c:759
> #6 0x0000002a992b638f in embperl_Execute (r=0x8a6a30,
> xSrcDomTree=Variable "xSrcDomTree" is not available.
> ) at epcomp.c:1851
> #7 0x0000002a992b95fb in ProviderEpRun_GetContentIndex
> (r=0x8a6a30, pProvider=0x81d690, pData=0x8a6ce8, bUseCache=0
> '\0') at epprovider.c:1780
> #8 0x0000002a992b7f87 in Cache_GetContentIndex (r=0x8a6a30,
> pItem=0x81d520, pData=0x8a6ce8, bUseCache=Variable
> "bUseCache" is not available.
> ) at epcache.c:1025
> #9 0x0000002a99294450 in ProcessFile (r=0x8a6a30,
> nFileSize=Variable "nFileSize" is not available.
> ) at epmain.c:1294
> #10 0x0000002a99294d1a in embperl_RunRequest (r=0x8a6a30) at
> epmain.c:1373
> #11 0x0000002a9929544e in embperl_ExecuteRequest
> (my_perl=0x504010, pApacheReqSV=0x504b08, pPerlParam=Variable
> "pPerlParam" is not available.
> ) at epmain.c:1476
> #12 0x0000002a9928bff3 in XS_Embperl__Req_ExecuteRequest
> (my_perl=0x504010, cv=Variable "cv" is not available.
> ) at Embperl.xs:136
> #13 0x0000002a9570a91b in Perl_pp_entersub () from
> /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/CORE/libperl.so
> #14 0x0000002a956ee86a in Perl_runops_debug () from
> /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/CORE/libperl.so
> #15 0x0000002a956a75e4 in perl_run () from
> /usr/lib64/perl5/5.8.5/x86_64-linux-thread-multi/CORE/libperl.so
> #16 0x00000000004019ec in main ()
> (gdb) fr 0
> #0 0x0000002a992af8f7 in EMBPERL2_Attr_selfValue
> (a=0x6f8730, pDomTree=0x81a638, pAttr=0x95fda8,
> nRepeatLevel=0, ppAttr=0x7fbffff0c8) at epdom.c:4330
> 4330 return Ndx2String (pAttr -> xValue) ;
> (gdb) p pAttr
> $1 = (struct tAttrData *) 0x95fda8
> (gdb) p *pAttr
> $2 = {nType = 2 '\002', bFlags = 0 '\0', nNodeOffset = 200,
> xNdx = 123, xName = 46, xValue = 124}
> (gdb) p pAttr->xValue
> $3 = 124
>
>
>
> --
> Best regards,
> Andrew mailto:[EMAIL PROTECTED]
>
>
> ** Virus checked by BB-5000 Mailfilter **
> !DSPAM:45b1ed43117152963317655!
>
ep.patch
Description: Binary data
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
