Re: [PATCH] gitk: macOS: ignore osascript errors
- From
Beat Bolli <dev+git@drbeat.li>
- Date
- Oct 27, 2020, 13:02 UTC
- Message-ID
- <1bd2f23c-9429-470d-d536-a5c844721715@drbeat.li>
- In-Reply-To
- <c4ca1c3b-0563-c35b-5bc0-5accddd0ad3a@haller-berlin.de>
On 26.10.20 18:21, Stefan Haller wrote:
Show 19 quoted lines
> On 25.10.20 18:51, Beat Bolli wrote: >> Starting gitk on a macOS 10.14.6 (Mojave) system fails with the error >> >> Error in startup script: 2020-10-25 17:16:44.568 >> osascript[36810:18758270] >> Error loading /Library/QuickTime/EyeTV MPEG >> Support.component/Contents/MacOS/EyeTV MPEG Support: >> dlopen(/Library/QuickTime/EyeTV MPEG >> Support.component/Contents/MacOS/EyeTV MPEG Support, 0x0106): >> code signature in (/Library/QuickTime/EyeTV MPEG >> Support.component/Contents/MacOS/EyeTV MPEG Support) >> not valid for use in process: mapping process is a platform >> binary, but mapped file is not >> [[this same message repeated dozens of times]] > > While the code change itself makes sense to me, the justification is a > bit strange. This error message suggests that something is messed up on > your system. Your commit message makes it sound as if all people on > macOS 10.14.6 get this error, which is not the case.
You're right; renaming the parent directory makes the error go away, but I'd still like to keep my system working with all installed software.
Show 8 quoted lines
>> Ignore errors from the osascript invocation, especially because this >> macOS >> version seems to correctly place the gitk window in the foreground. > > Whether gitk comes to the foreground on start depends on the Tcl/Tk > version, not the macOS version. With Tk 8.6 it does, so it might > actually be nice to add a version check here. (I'm not requesting that > you actually do that as part of this patch; just saying.)
wish(1) version 8.5 is bundled with macOS Mojave.
Show 27 quoted lines
>
>> Signed-off-by: Beat Bolli <dev+git@drbeat.li>
>> ---
>> gitk | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/gitk b/gitk
>> index 23d9dd1..8551711 100755
>> --- a/gitk
>> +++ b/gitk
>> @@ -12290,11 +12290,11 @@ if {[catch {package require Tk 8.4} err]} {
>> # on OSX bring the current Wish process window to front
>> if {[tk windowingsystem] eq "aqua"} {
>> - exec osascript -e [format {
>> + catch { exec osascript -e [format {
>> tell application "System Events"
>> set frontmost of processes whose unix id is %d to true
>> end tell
>> - } [pid] ]
>> + } [pid] ] }
>> }
>
> Like I said, the change itself looks good to me, especially since the
> corresponding code in git gui is also guarded by a catch.
>
> Best,
> StefanCheers, Beat