Ticket #1538 (closed bug: invalid)

Opened 4 years ago

Last modified 4 years ago

Invoking uninitialised continuation causes segfault

Reported by: arnsholt Owned by:
Priority: normal Milestone:
Component: none Version: trunk
Severity: medium Keywords:
Cc: Language:
Patch status: Platform:

Description

When an uninitialised Continuation object is invoked, Parrot segfaults (see attached code).

The problem is a simple failure to check for a NULL pointer in pmc/continuation.pmc. I've created a patch (against r42892) that fixes the issue on my machine. make test reports no failures. Patch created with svn diff in working copy root.

Attachments

cc.pir Download (62 bytes) - added by arnsholt 4 years ago.
cc-patch.diff Download (0.8 KB) - added by arnsholt 4 years ago.

Change History

Changed 4 years ago by arnsholt

Changed 4 years ago by arnsholt

Changed 4 years ago by whiteknight

The patch does not apply cleanly to current trunk. I tried applying it manually to Continuation.invoke, but the build fails when building PGE/builtins.pg.

I also will note that on my machine at least, the test case you provide does not segfault with current trunk. It doesn't actually do anything. This program:

.sub 'main' :main
    $P0 = new 'Continuation'
    $P0()
    say "Done"
.end

silently exits without printing anything.

Can you update your working copy, and try again?

Changed 4 years ago by bacek

  • status changed from new to closed
  • resolution set to invalid

Mark this ticket as invalid. Original report against version which is about one year old.

-- Bacek.

Note: See TracTickets for help on using tickets.