#7 Segfault using glut interface

POGL 0.xx
fixed-in-git
None
7
2015-01-14
2013-08-19
No

Environment

  • Arch Linux 3.10.6-2-ARCH SMP PREEMPT x86_64
  • Perl 5.18.0
  • OpenGL package 0.67
  • freeglut 2.8.1
  • glibc 2.18

Problem

I'm experiencing segfaults with attached test script. It is also concerning PDL, because it doesn't pass t/opengl.t test due to this segfault.

Running it hardened with malloc checks results in:

$ MALLOC_CHECK_=3 perl test-glut.pl
*** Error in `perl': malloc(): memory corruption: 0x0000000000a61f90 ***
[hangs here]

Valgrind log is also attached.

2 Attachments

Related

Bugs: #7

Discussion

  • Chris Marshall

    Chris Marshall - 2013-08-21

    Can you run the PDL::Graphics2D imag2d routine?
    Try help imag2d

    On Mon, Aug 19, 2013 at 6:45 PM, Anton Leontiev scileont@users.sf.net wrote:


    [bugs:#7] Segfault using glut interface

    Status: open
    Created: Mon Aug 19, 2013 06:45 PM UTC by Anton Leontiev
    Last Updated: Mon Aug 19, 2013 06:45 PM UTC
    Owner: nobody

    Environment

    Arch Linux 3.10.6-2-ARCH SMP PREEMPT x86_64
    Perl 5.18.0
    OpenGL package 0.67
    freeglut 2.8.1
    glibc 2.18

    Problem

    I'm experiencing segfaults with attached test script. It is also concerning
    PDL, because it doesn't pass t/opengl.t test due to this segfault.

    Running it hardened with malloc checks results in:

    $ MALLOC_CHECK_=3 perl test-glut.pl
    Error in `perl': malloc(): memory corruption: 0x0000000000a61f90
    [hangs here]

    Valgrind log is also attached.


    Sent from sourceforge.net because you indicated interest in
    https://sourceforge.net/p/pogl/bugs/7/

    To unsubscribe from further messages, please visit
    https://sourceforge.net/auth/subscriptions/

     

    Related

    Bugs: #7

  • Anton Leontiev

    Anton Leontiev - 2013-08-22

    I've updated Perl to v5.18.1. Same problem.

    Concerning imag2d. It works, but when I press 'q' key it is left on screen not responding to events. And at exit it segfaults.

    pdl> use PDL::Graphics2D
    pdl> $a = sequence(64,48,3);
    pdl> $a = $a->mv(2,0);
    pdl> $a /= $a->max;
    pdl> $a = sin(10*$a);
    pdl> $w1 = imag2d($a);
    Type Q or q to stop twiddling...
    Stop twiddling command, key 'q', detected.
    Stopped twiddle-ing!
    
    pdl> exit
    *** Error in `/usr/bin/perl': malloc(): memory corruption: 0x00000000022b1fb0 ***
    

    Can you reproduce the problem? Any ideas?

     
    • Chris Marshall

      Chris Marshall - 2013-09-24

      It appears that the problem may be related to running a 64bit perl platform.
      The upcoming PDL-2.007 is in its pre-release countdown stage. I've started
      work on the upcoming OpenGL update with dynamic extension binding. I'm
      raising the priority of this ticket as a reminder for that development.
      Thanks for the report.

       
  • Chris Marshall

    Chris Marshall - 2013-09-24
    • assigned_to: Chris Marshall
     
  • Chris Marshall

    Chris Marshall - 2013-09-24
    • Priority: 5 --> 7
     
  • Chris Marshall

    Chris Marshall - 2013-09-28

    I see the same segfault with the latest PDL-2.006_90 release.
    I plan to resolve it before the upcoming PDL-2.007 release
    next month.

     
  • Chris Marshall

    Chris Marshall - 2013-09-29

    I've just pushed OpenGL-0.6701 with a work-around for the segfault in the glutCloseFunc() handling. That capability is disabled. In the comming revamp of OpenGL and its GLUT support, I plan to refactor the callback handling code for a real fix. Please let me know if this works for you. Thanks.

     
  • Anton Leontiev

    Anton Leontiev - 2013-10-01

    Confirm. No more crashes with original test.
    Thank you for fix.

     
  • Chris Marshall

    Chris Marshall - 2013-10-03
    • status: open --> fixed-in-git
     
  • Chris Marshall

    Chris Marshall - 2013-10-03

    The fix is in OpenGL-0.6701 and higher. Thanks for reporting the problem.

     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks