Bug 205052

Summary: games/freesweep: Fix segfault on game win
Product: Ports & Packages Reporter: Randy Westlund <rwestlun>
Component: Individual Port(s)Assignee: Jason Unovitch <junovitch>
Status: Closed FIXED    
Severity: Affects Only Me CC: junovitch, miwi, vlad-fbsd
Priority: --- Keywords: crash, easy, patch, patch-ready
Version: LatestFlags: junovitch: merge-quarterly+
Hardware: Any   
OS: Any   
Attachments:
Description Flags
Fix preprocessor stringification
none
change upstream and update version
none
Corrected patch
none
update to 1.0
none
update to 1.0.1 none

Description Randy Westlund 2015-12-06 09:23:39 UTC
Created attachment 163882 [details]
Fix preprocessor stringification

Freesweep segfaults when you win a game.  The cause is mishandled stringification in the source.  I've attached two patch files for the port that resolve the issue.

This properly belongs upstream, but freesweep looks unmaintained and the contact address in the README is no longer valid.  Not sure what to do about that.
Comment 1 VK freebsd_triage 2015-12-06 10:14:05 UTC
Thanks for your submission, Randy!

Can you please attach a patch in unified diff format, and if possible confirm that it passes QA (portlint, poudriere)?
Comment 2 Randy Westlund 2015-12-06 19:31:25 UTC
Created attachment 163913 [details]
change upstream and update version

Rather than patching this locally, I forked the abandoned upstream and fixed the segfault there.  The last commit was 2003, so I'm adopting it.

The attached patch changes the upstream repo, bumps PORTVERSION from 0.92 to 0.93, and sets me as the maintainer.  It passes portlint and builds successfully.
Comment 3 VK freebsd_triage 2015-12-07 10:19:42 UTC
Thanks for your submission.

Since you're essentially forking the upstream, I'd like to ask you to file a new bug report that is a new port request with a shar file. It'd be best if you renamed it as well.
Comment 4 Dmitry Marakasov freebsd_committer 2015-12-28 19:44:51 UTC
There's absolutely no need to send shar or rename the project. Apart from minor shortcomings this looks good to me.
Comment 5 Randy Westlund 2015-12-28 21:47:57 UTC
Leave this on hold for the moment.  I've finally managed to get in contact with the original authors and am now officially a co-maintainer.  There will be a 1.0 release with the fix very soon.  I'll update the patch as soon as that happens.
Comment 6 Dmitry Marakasov freebsd_committer 2015-12-29 10:22:40 UTC
Ok. I'll attach my version of the patch.
Comment 7 Dmitry Marakasov freebsd_committer 2015-12-29 10:27:14 UTC
Created attachment 164814 [details]
Corrected patch

- PORTREVISION shold be removed when version is updated
- No need for MASTER_SITES with USE_GITHUB
- DISTVERSIONPREFIX is preferred to GH_TAGNAME
- GH_PROJECT not needed, same as PORTNAME
- While here, convert to conditional docs target

Just noticed that it lists LICENSE=GPLv2 GPLv3 / LICENSE_COMB=dual, which is incorrect for GPLv2+. It should be "LICENSE=GPLv2 # or later" (yes, with comment) for now
Comment 8 Martin Wilke freebsd_committer 2016-01-18 06:40:37 UTC
Hi,

Any progress here?
Comment 9 Randy Westlund 2016-01-18 07:41:00 UTC
I'm still waiting on the original author to check off on my changes.  I'll ping him again and update this as soon as I hear back.
Comment 10 Randy Westlund 2016-01-19 08:44:59 UTC
Created attachment 165797 [details]
update to 1.0

New 1.0 patch uploaded, with Dmitry's fixes included.  This is finally ready to go.
Comment 11 Jason Unovitch freebsd_committer 2016-02-14 21:41:30 UTC
(In reply to Randy Westlund from comment #10)
It's actually 'LICENSE= GPLv2+' now as support for the 'or later' has been added to the tree.

However I notice the internal version does not match the PORTVERSION...
cc -Wall -DVERSION=\"0.93\" -O2 -pipe  -fstack-protector -fno-strict-aliasing -c clear.c
Comment 12 Randy Westlund 2016-02-14 22:09:06 UTC
Created attachment 167001 [details]
update to 1.0.1

Good catch, thanks.  Fixed.
Comment 13 commit-hook freebsd_committer 2016-02-14 22:23:11 UTC
A commit references this bug:

Author: junovitch
Date: Sun Feb 14 22:22:40 UTC 2016
New revision: 408903
URL: https://svnweb.freebsd.org/changeset/ports/408903

Log:
  games/freesweep: update 0.92 -> 1.0.1

  - Transfer MAINTAINER from ports@ to submitter
  - Update LICENSE
  - Switch from GOOGLE_CODE to USE_GITHUB; use the maintainer's repository
  - While here, convert to conditional docs target
  - Expand on pkg-descr
  - MFH as the original upstream version seg faults upon winning a game and
    the maintainer is now a co-maintainer with the upstream project

  PR:		205052
  Submitted by:	Randy Westlund <rwestlun@gmail.com> (incoming maintainer)
  Reviewed by:	amdmi3 (earlier version)
  MFH:		2016Q1

Changes:
  head/games/freesweep/Makefile
  head/games/freesweep/distinfo
  head/games/freesweep/pkg-descr
Comment 14 Jason Unovitch freebsd_committer 2016-02-14 22:24:42 UTC
I've requested MFH as the version in quarterly would not be usuable if it segfaults and it's a non-invasive update.  Take and set merge-quarterly? until I get confirmation on the MFH approval.
Comment 15 commit-hook freebsd_committer 2016-02-14 22:36:17 UTC
A commit references this bug:

Author: junovitch
Date: Sun Feb 14 22:35:28 UTC 2016
New revision: 408907
URL: https://svnweb.freebsd.org/changeset/ports/408907

Log:
  MFH: r408903

  games/freesweep: update 0.92 -> 1.0.1

  - Transfer MAINTAINER from ports@ to submitter
  - Update LICENSE
  - Switch from GOOGLE_CODE to USE_GITHUB; use the maintainer's repository
  - While here, convert to conditional docs target
  - Expand on pkg-descr
  - MFH as the original upstream version seg faults upon winning a game and
    the maintainer is now a co-maintainer with the upstream project

  PR:		205052
  Submitted by:	Randy Westlund <rwestlun@gmail.com> (incoming maintainer)
  Reviewed by:	amdmi3 (earlier version)
  Approved by:	ports-secteam (feld)

Changes:
_U  branches/2016Q1/
  branches/2016Q1/games/freesweep/Makefile
  branches/2016Q1/games/freesweep/distinfo
  branches/2016Q1/games/freesweep/pkg-descr
Comment 16 Jason Unovitch freebsd_committer 2016-02-14 22:38:31 UTC
Close. Thanks!