• Jiří Techet's avatar
    Use non-symlinked VTE libraries on macOS (#1625) · 3fb94c23
    Jiří Techet yazdı
    * Try non-symlinked VTE libraries on macOS before the symlinked ones
    
    Plugins using VTE such as multiterm or debugger are linked against the
    non-symlinked version of the library like libvte.9.dylib and not
    libvte.dylib. When a bundle is created, all symlinks are replaced by
    a copy of the symlinked file. This means there are both libvte.dylib
    and libvte.9.dylib in the bundle both containing the same code. When
    Geany loads libvte.dylib and plugins load libvte.9.dylib the same code
    gets loaded twice and when the same type gets registered by GTK, it fails
    and the whole application freezes.
    
    This problem doesn't exist on linux or when running from the command line
    on macOS because the operating system detects it's the same library
    because of the symlink and it's loaded only once.
    
    Loading the same library as the one used by plugins fixes the issue with
    macOS bundle. The original symlinked name is still used as a fallback.
    
    The patch also adds #ifdef __APPLE__ around the Apple-specific library
    names which also prevents unnecessary retries on other platforms. Loading
    *.so libraries is still kept as a fallback on Apple as these are legal too
    and could in theory be used on OS X as well.
    
    * Try loading newer VTE versions before older ones on GTK 2
    3fb94c23
Adı
Son kayıt (commit)
Son güncelleme
ctags Loading commit data...
data Loading commit data...
doc Loading commit data...
icons Loading commit data...
m4 Loading commit data...
plugins Loading commit data...
po Loading commit data...
scintilla Loading commit data...
scripts Loading commit data...
src Loading commit data...
tests Loading commit data...
.gitignore Loading commit data...
.travis.yml Loading commit data...
AUTHORS Loading commit data...
COMMITTERS Loading commit data...
COPYING Loading commit data...
ChangeLog Loading commit data...
ChangeLog.pre-1-22 Loading commit data...
HACKING Loading commit data...
INSTALL Loading commit data...
Makefile.am Loading commit data...
NEWS Loading commit data...
README Loading commit data...
README.I18N Loading commit data...
README.Packagers Loading commit data...
README.rst Loading commit data...
THANKS Loading commit data...
TODO Loading commit data...
autogen.sh Loading commit data...
configure.ac Loading commit data...
geany.desktop.in Loading commit data...
geany.exe.manifest Loading commit data...
geany.gladep Loading commit data...
geany.nsi.in Loading commit data...
geany.pc.in Loading commit data...
geany.spec.in Loading commit data...
geany_private.rc Loading commit data...