>>>>> "Corinna" == Corinna Vinschen writes: Corinna> I've build my own debug version of the X stuff today and I tracked the Corinna> SEGV down. It's an unfortunate combination of two bugs in the SHM Corinna> implementation:
Corinna> - shmat() returns NULL on error instead of (void *)-1. Corinna> - shmat() only operates on shared memory segments of which the shmid Corinna> has been retrieved using shmget() by the application itself. I was Corinna> absolutely sure that only the key argument to shmget() is a valid Corinna> interprocess exchange value for identifying shared memory segments. Corinna> I wasn't aware that the shmid itself could be exchanged. Corinna> For today, I only fixed the first bug. This fixes the SEGV in uxterm Corinna> and friends, but a fix for the second bug is necessary to get a working Corinna> Bigfont extension. I hope to get this done next week. I just tried your fix which seems to be in the 20040329 snapshot. But now /usr/sbin/cygserver doesn't start anymore. I installed it as a service with cygrunsrv. The same happens for my other cygwin service /sbin/init which also refuses to start. In the process list I could see 4 !! /bin/cygrunsrv processes so. Reverting to 1.5.9 and all is fine. Corinna> Corinna Ciao Volker