[RFC] A trivial change for DESKTOP_ENTRIES
Stephen Montgomery-Smith
stephen at missouri.edu
Wed Jul 13 17:04:21 UTC 2011
On 07/13/2011 11:59 AM, Stephen Montgomery-Smith wrote:
> On 07/13/2011 11:42 AM, Jung-uk Kim wrote:
>> On Wednesday 13 July 2011 12:08 am, Stephen Montgomery-Smith wrote:
>>> On 07/12/2011 05:25 PM, Jung-uk Kim wrote:
>>>> After I updated x11-wm/compiz, GNOME was not able to start the
>>>> window manager. Basically, it complained that compiz-manager was
>>>> not found. Then, I realized compiz-manager.desktop was
>>>> automagically replaced by compizmanager.desktop. Now I tracked
>>>> it down to this commit:
>>>>
>>>> Sat Nov 27 17:42:46 2010 UTC (7 months, 2 weeks ago) by pav
>>>>
>>>> - DESKTOP_ENTRIES: commandline is used to name installed .desktop
>>>> file, this can lead to files containing whitespace and funny
>>>> characters; thus strip all non-alphanumeric characters
>>>>
>>>> http://www.freebsd.org/cgi/cvsweb.cgi/ports/Mk/bsd.port.mk.diff?r
>>>> 1=1.656;r2=1.657
>>>>
>>>> To me, it looks far too restrictive. At least, I'd like to allow
>>>> '-' and '_'. Please see the attached patch.
>>>>
>>>> Any objections?
>>>>
>>>> Jung-uk Kim
>>>
>>> Thinking more about it, it seems to me that instead of silently
>>> deleting the disallowed characters in the filename, that the port
>>> should declare itself broken if there are disallowed characters.
>>> That way, this particular error would have been caught far more
>>> easily.
>>
>> I think that's a good idea but "exit 1;" should be done in a separate
>> commit as an exp-run is needed.
>>
>>> Here is a simple patch, although I think you guys could come up
>>> with a better error message.
>>
>> :-)
>>
>> "entry 4 of" seems redundant. What do you think about the attached
>> patch? Please note I also added "." per Matthias Andree's request.
>>
>> Thanks,
>>
>> Jung-uk Kim
>
> I have no problems with your changes. But I didn't see where you put
> the ".". Maybe it was meant to be at the end of the error message.
>
> But code like this seems simpler than my original suggestion:
>
> if (echo "$$4" | grep -E [^[:alnum:]_-]> /dev/null); then echo \
> ${ECHO_MSG} "blah blah."; \
> exit 1; \
> fi; \
> pathname="${DESKTOPDIR}/$$4";
Oh, and use ${GREP} and ${ECHO_CMD} instead of echo and grep. And maybe
the "-E" is unnecessary.
More information about the freebsd-ports
mailing list