[Bug 235666] Segfault occurs when using Perl-Tk on FC6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.

Summary: Segfault occurs when using Perl-Tk on FC6


https://bugzilla.redhat.com/show_bug.cgi?id=235666





------- Additional Comments From michal@xxxxxxxxxxxx  2008-01-04 17:05 EST -------
With perl-Tk-debuginfo loaded I managed to get a core and a backtrace.
It looks like follows for perl-Tk-804.028-1:

Core was generated by `perl testask'.
Program terminated with signal 11, Segmentation fault.
#0  0x00002aaaaeff0ba6 in Tk_GetOptionValue (interp=0xb57b40,
    recordPtr=0xb0f820 " W�", optionTable=<value optimized out>,
    namePtr=<value optimized out>, tkwin=0xb35720) at tkConfig.c:2280
2280        if (optionPtr->specPtr->type == TK_OPTION_SYNONYM) {
(gdb) where
#0  0x00002aaaaeff0ba6 in Tk_GetOptionValue (interp=0xb57b40,
    recordPtr=0xb0f820 " W�", optionTable=<value optimized out>,
    namePtr=<value optimized out>, tkwin=0xb35720) at tkConfig.c:2280
#1  0x00002aaaaefa9f69 in FrameWidgetObjCmd (clientData=0xb0f820,
    interp=0xb57b40, objc=3, objv=0x7c5638) at tkFrame.c:772
#2  0x00002aaaaef8119b in Call_Tk (info=<value optimized out>, items=3,
    args=0x7c5638) at tkGlue.c:2283
#3  0x00002aaaaef826c0 in XStoWidget (my_perl=0x604010,
    cv=<value optimized out>) at tkGlue.c:2664
#4  0x0000003dd6490826 in Perl_pp_entersub ()
   from /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
#5  0x0000003dd648a0ee in Perl_runops_standard ()
   from /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
#6  0x0000003dd6437d9c in perl_run ()
   from /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
#7  0x00000000004017bc in main ()

In frame 0 optionPtr->specPtr comes as (const Tk_OptionSpec *) 0x0
so it is not that surprising that an attempt to derefernce it
segfaults.  The whole *optionPtr looks like this:

{specPtr = 0x0, dbNameUID = 0x31 <Address 0x31 out of bounds>,
  dbClassUID = 0xffffffffffff3fff <Address 0xffffffffffff3fff out of bounds>,
  defaultPtr = 0x3fffffffffff, extra = {monoColorPtr = 0x0, synonymPtr = 0x0,
    custom = 0x0}, flags = 0}

Is this value legitimate or this is a symptom of  a "generic trouble"
in a perl mulithreading support?

Replacing on line 2277 'if (optionPtr == NULL)' with
'if (optionPtr == NULL || optionPtr->specPtr == NULL )' should
prevent that segfault but I have no idea if this just papers over
symptomps and/or has other nasty side-effects.

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

--
Fedora Extras Perl SIG
http://www.fedoraproject.org/wiki/Extras/SIGs/Perl
Fedora-perl-devel-list mailing list
Fedora-perl-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/fedora-perl-devel-list

[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Legacy Announce]     [Fedora PHP Devel]     [Kernel Devel]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Big List of Linux Books]     [Gimp]     [Yosemite Information]
  Powered by Linux