Hi,

> 
> I found the error one of my input tags had a typo
> 
> <input type="text" name="date_sub" size="10" maxlength="10"
> value="[+$date+]" class="formfield"'>
> 
> note the extra ' at the end of the input tag. That combined 
> with the foreach syntax described below caused the 
> segmentation fault. If anyone wants to further debug this I 
> will be happy to help out.
> 

Great you found it.

In case you have a small test page that I can run here and shows the 
segfault, I would like to try to fix it.

Gerald


> 
> 
> 
> 
> 
> Kato M Yoshiro wrote:
> > 
> > I have been tasked with moving pages to a new embperl environment. 
> > Within a very complicated page, when any of several foreach 
> loops have 
> > more than a single row of data, the page segfaults (I 
> believe). I have 
> > been chasing a solution for a couple of days so I thought I 
> would throw this out there.
> > 
> > Original Environment which functions
> > Embperl/1.3.6
> > (this is a external hosted environment I can try to get 
> more data if 
> > it is
> > needed)
> > 
> > New Environment which does not function Debian 4.0
> > Apache/2.2.4 (Unix)
> > Embperl/2.2.0
> > PHP/4.4.7 mod_perl/2.0.3
> > Perl/v5.8.8
> > (I have full control of this environment)
> > 
> > 
> > Here is the offending code
> > 
> > 
> > [$foreach $single_target(@{$get_targets})$]
> > [-  (
> >     $tar_id,
> >     $tar_display,
> >     $tar_company
> >     ) = @{$single_target};
> > -]
> > 
> > 
> > [$endforeach$]
> > 
> > Notes
> > 
> > 1) Php was compiled using the Mysql libraries not the DBI libraries 
> > (not doing that led to its own seg faults but that error is fixed)
> > 
> > 2) The query functions as I can pull each of the array elements 
> > manually ($get_targets->[0][0], $get_targets->[1][0], ect.
> > 
> > 3) make test for embperl completed with no errors once I 
> changed the 
> > versions in epoincdiv.htm and epodiv.htm
> > 
> > 4) When debugging using the following
> > EMBPERL_DEBUG 2147475453
> > EMBPERL_LOG "/tmp/etest.log"
> > 
> > when 2 rows are returned
> > etest.log is 374K  and the webbrowser returns a blank page
> > 
> > when 1 row is returned
> > etest.log is 1.4M  and the webbrowser returns what I expected
> > 
> > 5) When reduced to a minimalist page the foreach functions 
> normally. 
> > 
> > 6) I have removed the parsing of the array
> > ($tar_id,$tar_display,$tar_company) = @{$single_target}; 
> leaving just 
> > the foreach with nothing in it and that still fails.
> > 
> > I have no idea what to look for within the error log so I was 
> > wondering if anyone had any Ideas (Gerald??)
> > 
> > 
> > 
> > 
> > Addition
> > 
> > /usr/bin/perl /usr/local/bin/embpexec.pl 
> > /web/sub/dev/click/htdocs/get_efficient/center_create_new_test.epl
> > produces only
> > 
> > "Segmentation fault"
> > 
> > 
> > Below are some gdb results for a web hit
> > 
> > (gdb) file /web/bin/httpd
> > Reading symbols from /web/bin/httpd...done.
> > Using host libthread_db library 
> "/lib/tls/i686/cmov/libthread_db.so.1".
> > (gdb) set args -f ./conf/httpd.conf -X
> > (gdb) r
> > Starting program: /web/bin/httpd -f ./conf/httpd.conf -X Failed to 
> > read a valid object file image from memory.
> > \[Thread debugging using libthread_db enabled] [New Thread 
> -1211119936 
> > (LWP 22866)]
> > 
> > Program received signal SIGSEGV, Segmentation fault.
> > [Switching to Thread -1211119936 (LWP 22866)]
> > 0xb7b59e38 in EMBPERL2_Node_selfCondCloneNode ()
> >    from /usr/src/Embperl-2.2.0/blib/arch/auto/Embperl/Embperl.so
> > 
> > 
> 
> --
> View this message in context: 
> http://www.nabble.com/seg-fault-from-foreach-loop-tf3827298.ht
> ml#a10860455
> Sent from the Embperl mailing list archive at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> ** Virus checked by BB-5000 Mailfilter ** 
> !DSPAM:416,465c7ac881834325296997!
> 
> 

** Virus checked by BB-5000 Mailfilter **

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

Reply via email to