From mboxrd@z Thu Jan 1 00:00:00 1970 Message-Id: <135DE285-36B4-49BC-8DF4-6B214CBAD09D@corpus-callosum.com> From: Jeff Sickel To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> In-Reply-To: <0C14786D-9214-49A3-A798-9DB55F9EAFA9@kix.in> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v919.2) Date: Tue, 8 Apr 2008 09:32:15 -0500 References: <0C14786D-9214-49A3-A798-9DB55F9EAFA9@kix.in> Subject: Re: [9fans] OSX Drawterm hangs on close Topicbox-Message-UUID: 8a4d4764-ead3-11e9-9d60-3106f5b1d025 On Apr 8, 2008, at 8:34 AM, Anant Narayanan wrote: > > On 06-Apr-08, at 8:46 AM, erik quanstrom wrote: >>> it's a known bug, but i don't think there's a fix for it. >> >> what's the bug? > > drawterm on OS X needs to be rewritten in Cocoa. Cocoa isn't completely needed... just getting rid of the Carbon framework dependancy. On 10.5.2, when quit from Dock->drawterm->Quit (should be the same as a menu command for quit) we get: (gdb) info threads 6 process 4410 thread 0x5b03 0x902d2bce in __semwait_signal () 5 process 4410 thread 0x5903 0x902d2bce in __semwait_signal () 4 process 4410 thread 0x5803 0x902d2bce in __semwait_signal () 3 process 4410 thread 0x5703 0x902d2bce in __semwait_signal () * 1 process 4410 local thread 0x2f27 0x9031bb8e in recvfrom$UNIX2003 () (gdb) bt #0 0x9031bb8e in recvfrom$UNIX2003 () #1 0x9031bb81 in recv$UNIX2003 () #2 0x00019c71 in so_recv (fd=5, d=0x162b0060, n=65536, f=0) at devip- posix.c:209 #3 0x00018745 in ipread (ch=0x13cd70, a=0x162b0060, n=65536, offset=0) at devip.c:377 #4 0x0000ba81 in devbread (c=0x13cd70, n=65536, offset=0) at dev.c:414 #5 0x0001f605 in ensure (s=0x1571d0, l=0x157224, n=3) at devssl.c:431 #6 0x0001f9e0 in sslbread (c=0x141de0, n=4, o=33837) at devssl.c:579 #7 0x0001ff00 in sslread (c=0x141de0, a=0x847600, n=4, off=33837) at devssl.c:683 #8 0x00028e00 in kread (fd=7, buf=0x847600, n=4, offp=0x0) at sysfile.c:408 #9 0x00028ea8 in _syspread (fd=7, buf=0x847600, n=4, off=-1) at sysfile.c:434 #10 0x0002a34c in sysread (fd=7, buf=0x847600, n=4) at sysfile.c:1072 #11 0x00058135 in readn (f=7, av=0x847600, n=4) at readn.c:13 #12 0x0005802a in read9pmsg (fd=7, abuf=0x847600, n=8240) at read9pmsg.c:14 #13 0x0002eb9a in exportfs (fd=7, msgsz=8240) at exportfs.c:84 #14 0x00003546 in cpumain (argc=0, argv=0xbfffeeec) at cpu.c:208 #15 0x000025b8 in main (argc=7, argv=0xbfffeed0) at main.c:68 I'll try building w/ proper 10.5 symbols and run a few more tests to find out which part of the event loop should really be catching the Quit message. jas