diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2016-02-01 09:36:30 +0100 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2017-03-14 06:28:41 +0100 |
commit | aa3365e7a2c4de405dab8ecc27283b3a64935dcf (patch) | |
tree | a025fa368e32bb87737b0c3715a0293c95840d25 /src/KeyMap.h | |
parent | e30f052fcd466d4a27cf03a7eddc55edbe7ef4c6 (diff) | |
download | scintilla-mirror-aa3365e7a2c4de405dab8ecc27283b3a64935dcf.tar.gz |
Scintilla Gtk: use gdk_threads_add_idle_full() instead of g_idle_add_full() and gdk_threads_add_timeout() instead of g_timeout_add()sciteco-dev-pre-v2.0.0
* The g_idle/g_timeout watchers are not executed with the Gdk lock
held. This causes memory corruptions and crashes when accessing
the Scintilla object from the non-main-loop-thread.
At least this was the case after Gdk 3.6 since Scintilla
used gdk_threads_enter()/leave() for earlier versions.
The timeout handlers have possibly always been broken.
* The new version should work with non-deprecated APIs in all Gdk
versions.
* Even though this only fixes the idle handlers in Gdk >= 3.6 where
gdk_threads_enter() is deprecated (the only way to provoke
above situation) - and the timers of course - this patch makes
the code more elegant.
Diffstat (limited to 'src/KeyMap.h')
0 files changed, 0 insertions, 0 deletions