ports/139259: fix crash in p5-CGI-SpeedyCGI port

Vivek Khera vivek at khera.org
Wed Sep 30 18:40:04 UTC 2009


>Number:         139259
>Category:       ports
>Synopsis:       fix crash in p5-CGI-SpeedyCGI port
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Wed Sep 30 18:40:03 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Vivek Khera
>Release:        FreeBSD 7.2-RELEASE i386
>Organization:
>Environment:
System: FreeBSD vk-dev.int.kcilink.com 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Mon May 11 14:14:08 EDT 2009 vivek at vk-dev.int.kcilink.com:/n/yertle1/sources/usr7/obj.i386/n/yertle1/sources/usr7/src/sys/KCI32 i386


	
>Description:
	

Port www/p5-CGI-SpeedyCGI

with perl 5.10, speedy tends to segfault when the program calls exit() after
the first time it is run.

See also bug report from Debian:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=537996

>How-To-Repeat:
	

see above bug report from debian.  it may or may not happen on any given
machine.  on my machines i have a big program from our application that does
it.

>Fix:

	

this is the patch copied from debian into the port.

diff -Nru p5-CGI-SpeedyCGI.old/files/patch-src_speedy_perl.c p5-CGI-SpeedyCGI/files/patch-src_speedy_perl.c
--- p5-CGI-SpeedyCGI.old/files/patch-src_speedy_perl.c	1969-12-31 19:00:00.000000000 -0500
+++ p5-CGI-SpeedyCGI/files/patch-src_speedy_perl.c	2009-09-30 14:23:17.000000000 -0400
@@ -0,0 +1,15 @@
+Author: Niko Tyni <ntyni at debian.org>
+Description: Closes: #537996
+The SvIV call crashes in on Perl 5.10.0 when warnings are
+enabled and the value is undef.
+--- src/speedy_perl.c
++++ src/speedy_perl.c
+@@ -818,7 +818,7 @@
+     my_call_sv(get_perlvar(&PERLVAR_RESET_GLOBALS));
+ 
+     /* Copy option values in from the perl vars */
+-    if (SvIV(PERLVAL_OPTS_CHANGED)) {
++    if (SvTRUE(PERLVAL_OPTS_CHANGED)) {
+ 	int i;
+ 	for (i = 0; i < SPEEDY_NUMOPTS; ++i) {
+ 	    OptRec *o = speedy_optdefs + i;
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list