Summary: | sysutils/bsdisks: coredumps on postponed registration processing due to wrong iteration | ||||||
---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Oleg Sidorkin <osidorkin> | ||||
Component: | Individual Port(s) | Assignee: | Gleb Popov <arrowd> | ||||
Status: | Closed FIXED | ||||||
Severity: | Affects Some People | CC: | lcook | ||||
Priority: | --- | Keywords: | crash, needs-qa | ||||
Version: | Latest | Flags: | arrowd:
maintainer-feedback+
koobs: merge-quarterly? |
||||
Hardware: | Any | ||||||
OS: | Any | ||||||
Attachments: |
|
Description
Oleg Sidorkin
2020-06-19 20:01:22 UTC
Hi Oleg, thanks for your submission. Just one minor thing: When submitting a patch pertaining to a port, it's recommended that you generate it via `make makepatch`. So for instance in this case: $ portsnap auto # If you haven't got the ports tree in /usr/ports already $ cd /usr/ports/sysutils/bsdisks $ make fetch extract $ cd work/bsdisks-* $ cp objectmanager.cpp objectmanager.orig $ # make the according changes to objectmanager.cpp $ cd ../../ $ make makepatch You'll then notice a new 'files/' directory was created that contains the patch 'patch-objectmanager.cpp'. From there you can generate a diff containing that change via svn. Again, for this instance: $ cd /usr/ports # good idea to be at the root of the ports tree $ svn diff sysutils/bsdisk > patch.diff Then attach `patch.diff`. Whilst this isn't _needed_ it does make the life of a committer easier, as this saves the extra time of doing it themselves. For further reading see here: https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/port-upgrading.html#svn-diff. Cheers! ^Lewis (In reply to Lewis Cook from comment #1) (Oops) More importantly... it's a _good_ idea to actually include the new files: $ svn add files/patch-objectmanager.cpp $ # then actually generate the diff ;) ^Lewis (In reply to Lewis Cook from comment #1) Thanks for feedback. I think this patch should not be commited as a ports patch. I suppose it will be upstreamed, and we will get new release of bsdisks (since bsdisks is freebsd-only software and port maintainer is the primary developer of bsdisks also). This happend in all bsdisks-related tickets I know. So this was intentional. :) I'll submit a proper svn diff patch in case of maintainer timeout. (In reply to Oleg Sidorkin from comment #3) No worries. Just wanted to mention an ever so slight typo in comment#1. When using `portsnap auto` this doesn't fetch the relevant svn repository meta-data, subsequently you'll be unable to `svn diff` so rather you can simply _just_ use (for example) `diff -u foo foo.orig > patch.diff`. Another thing; when attaching a patch which is against the ports tree you need to request maintainer approval (if you're the maintainer, instead set [+]), so by changing the attachment flag: Attachment -> Details -> maintainer-approval [?] Thanks for your time on this! ^Lewis A commit references this bug: Author: arrowd Date: Sat Jun 20 06:30:07 UTC 2020 New revision: 539696 URL: https://svnweb.freebsd.org/changeset/ports/539696 Log: sysutils/bsdisks: Update WWW. PR: 247431 Changes: head/sysutils/bsdisks/pkg-descr (In reply to Oleg Sidorkin from comment #3) > I think this patch should not be commited as a ports patch. I suppose it will be upstreamed, and we will get new release of bsdisks This is correct and it is my fault for not putting correct upstream link in the port's pkg-descr. Thanks for the patch, I'll deal with the problem shortly. Oleg, can you please try out my patch instead of yours? Does it also make the crash go away? diff -r 9c76205b86ef objectmanager.cpp --- a/objectmanager.cpp Sat May 23 20:59:10 2020 +0400 +++ b/objectmanager.cpp Sat Jun 20 11:25:34 2020 +0400 @@ -235,6 +235,7 @@ { qDebug() << "Pop " << *it << " from m_postponedRegistrations"; m_postponedRegistrations.erase(it); + break; } } } while(postponedSize > m_postponedRegistrations.size()); (In reply to Gleb Popov from comment #7) Yes, this patch also helps. A commit references this bug: Author: arrowd Date: Sat Jun 20 10:05:15 UTC 2020 New revision: 539725 URL: https://svnweb.freebsd.org/changeset/ports/539725 Log: sysutils/bsdisks: Update to 0.16 PR: 247431 Submitted by: Oleg Sidorkin <osidorkin@gmail.com> Changes: head/sysutils/bsdisks/Makefile head/sysutils/bsdisks/distinfo Committed, thanks for your bug report. I'll leave this open until someone do the MFH. |