Opened 12 years ago

Last modified 12 years ago

#36597 closed defect

portpkg.tcl script fails with segfault — at Version 2

Reported by: damoclark (Damo) Owned by: macports-tickets@…
Priority: Normal Milestone: MacPorts 2.1.3
Component: base Version: 2.1.2
Keywords: Cc:
Port:

Description (last modified by ryandesign (Ryan Carsten Schmidt))

Like 189 of portpkg.tcl uses the findBinary procedure to locate the full path to the cpio binary and then uses that as the value to the -x parameter of the pax command. This causes pax to segmentation fault.

The command that fails is:

cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_mythtv-core.25/mythtv-core.25/work/destroot && /bin/pax -x /usr/bin/cpio -w -z . > /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_mythtv-core.25/mythtv-core.25/work/mythtv-core.25-0.25.2-Fixes-20120918.pkg/Contents/Archive.pax.gz

The attached patch file simply uses 'cpio' as the parameter to -x option of pax rather than the calculated full path (ie /usr/bin/pax). With just 'cpio' there is no segmentation fault.

Change History (4)

Changed 12 years ago by damoclark (Damo)

Attachment: portpkg.tcl.patch added

Patch to portpkg.tcl setting the archive format to 'cpio' rather than '/usr/bin/cpio'

comment:1 Changed 12 years ago by damoclark (Damo)

Sorry, I should have added that this was on OSX 10.8.1 I suspect earlier versions of Mac OS had a more tolerant pax command.

Damien.

comment:2 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Keywords: pkg removed
Priority: HighNormal

Could you attach the crash log from that segmentation fault? It should be in ~/Library/Logs/DiagnosticReports

Changed 12 years ago by damoclark (Damo)

Crash log from pax command

Note: See TracTickets for help on using tickets.