I found an interresting bugreport, reminding me that I upgraded to
gtk-2.8.12 the same weekend as switching to utf-8:

 http://www.mail-archive.com/[email protected]/msg05334.html
<cite>--------
On 4/11/2006 2:08 PM, Enrico Tröger wrote:
> Hi,
> 
> I have some problems with newer GTK versions(2.8.12 and above) and my
> application(http://geany.uvena.de). It crashes with segmentation
> faults inside GTK. With GTK 2.8.10, it works at its best.
[snip]

Are you using any threading in your application, or calling
XInitThreads() somewhere?  I found out the hard way that 2.8 segfaults
inside cairo if XInitThreads() isn't called before initialising gdk and
gtk 2.8, while gtk 2.6 didn't have a problem.
-------------</cite>

but 

$ grep -ir 'XInitThreads(' sci*

won't find anything, but the output of gdb shows SciTE uses threading.
BTW: I use gentoolinux and the v1.68 ebuild and source-zip.

Going on:

[EMAIL PROTECTED] ~/Projects/scite $ grep -irn 'Threads' sci*
scintilla/gtk/makefile:28:ifdef NOTHREADS
scintilla/gtk/makefile:29:THREADFLAGS=-DG_THREADS_IMPL_NONE
scintilla/gtk/PlatGTK.cxx:29:#define USE_LOCK defined
(G_THREADS_ENABLED) && !defined(G_THREADS_IMPL_NONE)
scintilla/gtk/PlatGTK.cxx:61:static void InitializeGLIBThreads()
{ scintilla/gtk/PlatGTK.cxx:71:           InitializeGLIBThreads();
scintilla/src/RESearch.cxx:18: * used from multiple threads, etc.
scite/gtk/makefile:28:CONFIGTHREADS=
scite/gtk/makefile:33:CONFIGTHREADS=glib-config --libs gthread
scite/gtk/makefile:106: $(CC) `$(CONFIGTHREADS)` -DGTK $^ -o $@ `
$(CONFIGLIB)` scite/lua/src/lstate.h:20:** Because threads can read the
stack of other threadsscite/lua/src/lstate.h:109:** `global state',
shared by all threads of this state
scite/src/Embedded.properties:1132:maxrequestsperthread maxspareservers
maxsparethreads \ scite/src/Embedded.properties:1133:maxthreads
maxthreadsperchild mcachemaxobjectcount \
scite/src/Embedded.properties:1137:minspareservers minsparethreads
mmapfile \ scite/src/Embedded.properties:1175:sslverifydepth
startservers startthreads \
scite/src/Embedded.properties:1176:suexecusergroup threadlimit
threadsperchild \scite/src/Embedded.properties:1177:threadstacksize
timeout transferlog typesconfig \
scite/src/conf.properties:78:maxrequestsperthread maxspareservers
maxsparethreads \ scite/src/conf.properties:79:maxthreads
maxthreadsperchild mcachemaxobjectcount \
scite/src/conf.properties:83:minspareservers minsparethreads mmapfile \
scite/src/conf.properties:121:sslverifydepth startservers startthreads
\ scite/src/conf.properties:122:suexecusergroup threadlimit
threadsperchild \ scite/src/conf.properties:123:threadstacksize timeout
transferlog typesconfig \ [EMAIL PROTECTED] ~/Projects/scite $

shows scintilla uses GLIBThreads.

Another web snipped from gtk.org/faq/:
------
The GLib library can be used in a thread-safe mode by calling
g_thread_init() before making any other GLib calls.
------

Any hints?

ervin

--
Ervin Peters
D-99425 Taubach

_______________________________________________
Scite-interest mailing list
[email protected]
http://mailman.lyra.org/mailman/listinfo/scite-interest

Reply via email to