DiffMerge error messages on OSX (Mavericks)

Support for our DiffMerge utility.

Moderator: SourceGear

cappuccino
Posts: 1
Joined: Wed Feb 12, 2014 6:06 am

DiffMerge error messages on OSX (Mavericks)

Post by cappuccino » Wed Feb 12, 2014 6:08 am

When running/quitting Diffmerge on OSX Mavericks, I find the following messages in the system console:
2014-02-12 13:04:33.848 DiffMerge[93636:507] CoreText performance note: Client called CTFontCreateWithName() using name ".Lucida Grande UI" and got font with PostScript name ".LucidaGrandeUI". For best performance, only use PostScript names when calling this API.
2014-02-12 13:04:33.848 DiffMerge[93636:507] CoreText performance note: Set a breakpoint on CTFontLogSuboptimalRequest to debug.
2014-02-12 13:04:34.364 DiffMerge[93636:507] CoreText performance note: Client called CTFontCreateWithName() using name ".Lucida Grande UI" and got font with PostScript name ".LucidaGrandeUI". For best performance, only use PostScript names when calling this API.
Maybe that could easily be fixed in a future release?

jeffhostetler
Posts: 534
Joined: Tue Jun 05, 2007 11:37 am
Location: SourceGear
Contact:

Re: DiffMerge error messages on OSX (Mavericks)

Post by jeffhostetler » Wed Feb 12, 2014 11:43 am

These are harmless warnings from a library that DiffMerge links with.
Annoying yes, but harmless.

I'm waiting on a fix in that library and then I can do another release
to quiet that message.

j

zsuhq
Posts: 1
Joined: Sat Feb 15, 2014 3:42 am

Re: DiffMerge error messages on OSX (Mavericks)

Post by zsuhq » Sat Feb 15, 2014 3:46 am

When I launch DiffMerge from command line I see a pop up dialog with the following info:

Code: Select all

wxWidgets Debug Alert

/build/sgdm400/Apple/intel/Release_patched/wxWidgets-3.0.0-rc1/src/common/arrstr.cpp(368): assert "nIndex < m_nCount" failed in RemoveAt(): bad index in wxArrayString::Remove

Call stack:
[00] wxFileName::RemoveLastDir()             
[01] dlg_paid::~dlg_paid()                   
[02] dlg_paid::~dlg_paid()                   
[03] wxURI::~wxURI()                         
[04] wxHashTable::~wxHashTable()             
[05] dlg_paid::~dlg_paid()                   
[06] wxLogger::DoLogTrace(wxString const&, wchar_t const*, ...) 
[07] wxLogger::DoLogTrace(wxString const&, wchar_t const*, ...) 

Do you want to stop the program?
You can also choose [Cancel] to suppress further warnings.
How can i get rid of this? It's really annoying and inconvenient since it pops up every time it's launched from command line.

Thanks!

jeffhostetler
Posts: 534
Joined: Tue Jun 05, 2007 11:37 am
Location: SourceGear
Contact:

Re: DiffMerge error messages on OSX (Mavericks)

Post by jeffhostetler » Tue Feb 18, 2014 12:27 pm

Could you give us a little more information about your system.

Which version of DiffMerge do you have?
Which version of OS X do you have?

What is the command line that causes the error?

Does it run OK when launched from Finder?

thanks

oalders
Posts: 3
Joined: Tue Apr 22, 2014 8:49 am

Re: DiffMerge error messages on OSX (Mavericks)

Post by oalders » Tue Apr 22, 2014 8:52 am

I'm getting the following error when I try to copy to my clipboard:

Image

The console provides this error as well: /build/sgdm400/Apple/intel/Release_patched/wxWidgets-3.0.0-rc1/src/osx/carbon/clipbrd.cpp(65): assert "m_pasteboard" failed in Clear(): Clipboard creation failed.

This is OS X 10.9.2 and the latest registered DiffMerge (downloaded today).

Beth
Posts: 8550
Joined: Wed Jun 21, 2006 8:24 pm
Location: SourceGear
Contact:

Re: DiffMerge error messages on OSX (Mavericks)

Post by Beth » Tue Apr 22, 2014 4:38 pm

What steps are you using for copying the data to the clipboard. Are you using the Export function or just selecting text and trying to copy that with a Mac function?
Beth Kieler
SourceGear Technical Support

oalders
Posts: 3
Joined: Tue Apr 22, 2014 8:49 am

Re: DiffMerge error messages on OSX (Mavericks)

Post by oalders » Tue Apr 22, 2014 8:21 pm

Just selecting text and command + c.

Beth
Posts: 8550
Joined: Wed Jun 21, 2006 8:24 pm
Location: SourceGear
Contact:

Re: DiffMerge error messages on OSX (Mavericks)

Post by Beth » Wed Apr 23, 2014 2:19 pm

We tested it here on 3 different Macs here, of which one was Mavericks. We can't make the same error happen.

Do you have another user with a similar machine you can try this?

Outside of what you see on the screen, what errors do you see in the Systems log files.?
Beth Kieler
SourceGear Technical Support

oalders
Posts: 3
Joined: Tue Apr 22, 2014 8:49 am

Re: DiffMerge error messages on OSX (Mavericks)

Post by oalders » Thu Apr 24, 2014 9:40 am

It was happening after launching with "git mergetool", but today when I tried to reproduce it, I couldn't. No idea what was going on. If this happens again, I'll revisit it. Thanks for looking into this.

Beth
Posts: 8550
Joined: Wed Jun 21, 2006 8:24 pm
Location: SourceGear
Contact:

Re: DiffMerge error messages on OSX (Mavericks)

Post by Beth » Thu Apr 24, 2014 10:22 am

Thanks for the update.
Beth Kieler
SourceGear Technical Support

elliott
Posts: 1
Joined: Wed Jul 16, 2014 12:55 pm

Re: DiffMerge error messages on OSX (Mavericks)

Post by elliott » Wed Jul 16, 2014 1:12 pm

jeffhostetler wrote: I'm waiting on a fix in that library and then I can do another release
to quiet that message.
In the meantime, the warnings can be quieted by redirecting stderr to /dev/null. Of course this also suppresses other errors and warnings. Here is what I did:

Code: Select all

# In my .zshrc
alias diffmerge='diffmerge 2>/dev/null'

Code: Select all

# in my ~/.gitconfig
[difftool "diffmerge"]
    cmd = /usr/bin/diffmerge 2>/dev/null \"$LOCAL\" \"$REMOTE\"
    ...
   
[mergetool "diffmerge"]
    cmd = /usr/bin/diffmerge 2>/dev/null --merge --result=\"$MERGED\" \"$LOCAL\" \"$BASE\" \"$REMOTE\"
    ...
Cheers

jawshooah
Posts: 3
Joined: Thu Dec 04, 2014 10:58 am

Re: DiffMerge error messages on OSX (Mavericks)

Post by jawshooah » Mon Feb 16, 2015 10:14 am

zsuhq wrote:When I launch DiffMerge from command line I see a pop up dialog with the following info:

Code: Select all

wxWidgets Debug Alert

/build/sgdm400/Apple/intel/Release_patched/wxWidgets-3.0.0-rc1/src/common/arrstr.cpp(368): assert "nIndex < m_nCount" failed in RemoveAt(): bad index in wxArrayString::Remove

Call stack:
[00] wxFileName::RemoveLastDir()             
[01] dlg_paid::~dlg_paid()                   
[02] dlg_paid::~dlg_paid()                   
[03] wxURI::~wxURI()                         
[04] wxHashTable::~wxHashTable()             
[05] dlg_paid::~dlg_paid()                   
[06] wxLogger::DoLogTrace(wxString const&, wchar_t const*, ...) 
[07] wxLogger::DoLogTrace(wxString const&, wchar_t const*, ...) 

Do you want to stop the program?
You can also choose [Cancel] to suppress further warnings.
How can i get rid of this? It's really annoying and inconvenient since it pops up every time it's launched from command line.

Thanks!
I'm getting the exact same thing when running git difftool or git mergetool.

I'm running DiffMerge 4.2.0 (697:52f98c4fcb) [intel] stable on Mac OS 10.10.2 (Yosemite).

My .gitconfig looks like this:

Code: Select all

...
[mergetool "diffmerge"]
    cmd = diffmerge --nosplash --merge --result=$MERGED $LOCAL $BASE $REMOTE
    trustExitCode = true
[difftool "diffmerge"]
    cmd = diffmerge --nosplash $LOCAL $REMOTE
...

Beth
Posts: 8550
Joined: Wed Jun 21, 2006 8:24 pm
Location: SourceGear
Contact:

Re: DiffMerge error messages on OSX (Mavericks)

Post by Beth » Mon Feb 16, 2015 10:56 am

Did you try the suggestions from the post above yours?

What happens if you use it outside of Git?
Beth Kieler
SourceGear Technical Support

jawshooah
Posts: 3
Joined: Thu Dec 04, 2014 10:58 am

Re: DiffMerge error messages on OSX (Mavericks)

Post by jawshooah » Tue Feb 17, 2015 9:58 am

Beth wrote:Did you try the suggestions from the post above yours?

What happens if you use it outside of Git?
I did, and redirecting stderr to /dev/null did not change anything. Running diffmerge from the command line or through Git as a difftool/mergetool all result in the same error dialog.

Opening DiffMerge.app using Finder or open -a /Applications/DiffMerge.app both work fine.

pezzywoo
Posts: 2
Joined: Thu May 07, 2015 12:00 am

Re: DiffMerge error messages on OSX (Mavericks)

Post by pezzywoo » Thu May 07, 2015 12:16 am

The error

Code: Select all

/build/sgdm400/Apple/intel/Release_patched/wxWidgets-3.0.0-rc1/src/common/arrstr.cpp(368): assert "nIndex < m_nCount" failed in RemoveAt(): bad index in wxArrayString::Remove
is due to calling the program from the command line without a path, like having it in $PATH

Code: Select all

ls -l | grep diffmerge
  diffmerge -> /opt/homebrew-cask/Caskroom/diffmerge/4.2.0.697/DiffMerge.app/Contents/MacOS/DiffMerge

$ /usr/local/bin/diffmerge <--- works, no error
$ /opt/homebrew-cask/Caskroom/diffmerge/4.2.0.697/DiffMerge.app/Contents/MacOS/DiffMerge <--- works, no error
$ diffmerge <--- works, but gives error
So either use absolute path when calling the program or use a small wrapper script like this:

Code: Select all

#!/bin/bash
/opt/homebrew-cask/Caskroom/diffmerge/4.2.0.697/DiffMerge.app/Contents/MacOS/DiffMerge $@
Save the above to

Code: Select all

/usr/local/bin/diffmerge
and make it executable with

Code: Select all

chmod +x /usr/local/bin/diffmerge
Now

Code: Select all

diffemerge
will run without error.

Maybe SourceGear folks can identify the code causing this now and hopefully fix it so we can avoid this work around.

Post Reply