Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Sep 2009 14:32:23 -0400 (EDT)
From:      Vivek Khera <vivek@khera.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/139259: fix crash in p5-CGI-SpeedyCGI port
Message-ID:  <20090930183223.B71AB3F43F@vk-dev.int.kcilink.com>
Resent-Message-ID: <200909301840.n8UIe46g081198@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>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@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@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:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090930183223.B71AB3F43F>