Detox is masked for ppc. This is despite the fact that it compiles because it does not run. The fix is incredibly simple. I've submitted it to the author, but he has not responded. I thought gentoo might want to patch it and unmask another package. Unlike intel machines, ppc chars default to unsigned. The author assigned the results of a function returning an integer to a char and tested it for negativity, indicating the end of a list. Since the char is unsigned, it is never negative. Yield: infinite loop in argument parsing. The fix: dump the char for an int or explicitly define the char as signed. I've opted for the latter. Patch attached. Sorry if this isn't the proper forum for such things. Reproducible: Always Steps to Reproduce: 1. ebuild /usr/portage/app-misc/detox/detox-1.1.1.ebuild merge 2. detox foo\ bar 3. Actual Results: Program hangs. gdb reveals it is caught in the cli argument parsing loop for the reasons described above. Expected Results: renamed foo\ bar to foo_bar. With my patch, it now does. An incredibly small patch follows . . .
Created attachment 60963 [details, diff] alters a char variable troublesome on ppc
int poptGetNextOpt(poptContext con); the current code is just WRONG. please report upstream to use the right size for variables.
Yeah as Luca pointed it out, the current code is incorrect (not just missing a 'signed' specified). c needs to be an int, so that also fixes the signed issue. Fixed in 1.1.1-r1. Thanks for the report.
(In reply to comment #3) > Yeah as Luca pointed it out, the current code is incorrect (not just missing a > 'signed' specified). c needs to be an int, so that also fixes the signed issue. > > Fixed in 1.1.1-r1. Thanks for the report. Yes, I believe I mentioned that: > The fix: dump the char for an int or explicitly define the char as signed. I've opted for the latter. I stuck with the char in hopes that the original author, who surly thought he was gaining something by using a char rather than something more obvious, would be more likely to incorporate the patch. No matter. Thank you much. I'm glad the issue is resolved.
The intent of this fix was to unmask the package on ppc. I see the new version, but ppc is still masked. What remains to put it into ~ppc?
That'd be up to the ppc team.
It's in ~ppc now.