From f0e2bd26c26a26df4e0be62e767a2a2bc5694ba9 Mon Sep 17 00:00:00 2001 From: Godopu Date: Thu, 16 Jul 2026 23:27:55 +0900 Subject: [PATCH] fix(ui): correct libc symbol lookup for direct _exit syscall to achieve async-signal-safety --- .../test/incremental_kernel.Ly9AZGFydD0zLjA= | Bin 4028768 -> 4028768 bytes .../test/incremental_kernel.Ly9AZGFydD0zLjA= | Bin 4060680 -> 4060680 bytes .../packages/mam_pty/lib/src/pty_session.dart | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/.agents/skills/multi-agent-mux-ui/packages/mam_core/.dart_tool/test/incremental_kernel.Ly9AZGFydD0zLjA= b/.agents/skills/multi-agent-mux-ui/packages/mam_core/.dart_tool/test/incremental_kernel.Ly9AZGFydD0zLjA= index 971d7b4054aae59b8a13984b94cc8d33f4e4c69e..cd8313229695777c3fd96f7da8c17e010daec9c3 100644 GIT binary patch delta 182 zcmXxZHwwZ406sZpna zOp_LEI&|sLXTXpVV=`v~L7l-aLZx~M zA<*0Ht-8Cqt2+r`LI4fXQNW!MQJE2O=80rM{AQRD2*~p}Pv5y!>CmW;kM4Bcd+s^s z{^$SCy=A_5oiW3Q;~8GVYx#bB5}(ZX=Lhfu`9b_(K7~)^hwy29I-kK09wA%)HCrCH4IXCL3dlYIk1$T9!?Ri2bax$# zxN4Z{vCTyl8fLxb#q}Ca;C!gmHs5Au@MPN(ly6(c1;D1z_7Jxn%`Ugq7ucfdwkX8$ zer>bYeh+i3%}0HyJ}MxK9$Ta0?{|v7Ao$yBAF9Ey<}hot9o+R+3R0G}-@FV0{uu&( z(i`v$$3sASZh?Jrx_$Ci#(v8Md)|(tbftaV%`1EC({2uEpKcdvK>Iw_UK)>QpAV~y z33=kl_WM!3eYG0UzLBdzv-S2p_Jb&i6V_@r03;g$QTv}*`zv*p0ZP*LHxfek+LYT* zq}#t>?Vou5H4N$O-*6HGOSv%9W524Rq9P%qQv3b??O01Qb0o126wl0&oZu7y#FHJ_ zDBqE%Cg!+>GeKgG#~ja~q}kxOn$bCGxduQ2YUy~1bv#ErW}I)F>6`{g9CsO#1$pJJ*66=cBB%!h0keaaQo#<1{2vVh<{HKJN4} zkhk+i*7;nY+dojZ*PS)g!Ok?+X;wTad~@z13oUrGvA+wr$5$F&w;Sf~B@e>9jY3_8$fgdm+Io_+!z1@H%x)ongjp!`28KLh#Y1j;3F5a* z;G7JjdfZ4Whu}kEEb;s2=bv)waSeAEVV&Em z0y7PeaSId~y0(sW*HXU}!mIB3zKuYBblT0j9pH`>)Z!c?_&D4LuKQ5j#oMgAJzj;Y z?spSi=-j7OJ#Pf~I)SgAA)cYISw97IE91#wJ?zfPflyAGFoMx?55>)ME9)5>__!D3 z9?y8{v^=57dM0{z4+KSdX0o1=cqj1O^|MYuJuNqQmZ$_0DLS52z9(}?s19dkJZbQ3 zPMmp`?6={Zp&qNjvpsRVo``ig_ntilPb6`;#XojrBFy16+-s=Z^L~NnbeiWh>-o^v zI$Wub=WB!KtHhQ6B+O1cIwQ&8`7vSGJBU1G$GIABA-Q)a&NddZ-a@6S!L=Ih^**X{ zZ=wa>Y^8g73t1GpzW{NeKK$SaI*L%KcRJGOy`$mK|M!F zB6$}XymR6i838Qsl28jc0qlG2l|ACg-gPM7`&+fadVkMF;HdGs)4d_q>!(HQ@kU_D zdQIOE=8Xl)hCsD^#jLNWo*hKf?X5Q*R(6J?7|}p z|HS&+?CojFY2kl^x|-pC?2Bj05-tT4ugpC zQ=Coa*l<#2CL0)XqW}T+T3{G0KyD7W3_NEDJP{`^a5wN`uh54L4b&R~=ENxnReEkl zqah$A4!=x=p0gzIo*{4~as0zyReGSKAaE%yaET3^k1IWh41wcbgKm7Zk`Vm65XAE^f?Dxv@r6t(@D)PqYv>cKmHF7@D&-UT;FJ-8&eS&@2h zwIR5oHzOnMi^28Li@%im;^31^esJ4^TDUovvOx!>&TKZ=LN6b4*x;Y3+LM?4xZF{aS0r9 zp&0jp25AhTS77@1l;Y5*8g1y)2;CaPFricMm)i$Z@AYmk^hJcxmWMj3Q0RP7=zJLn znG+VH($FOdYiVDVP*>=G8Xth$4g7;+ZVmULaxh4_25Bf5!{vsaO`Vdi;ji4FM_bcVt}FGh$S+W^gC=`1Yj<~{=KI;FD>e?2dqZ`uy83>1QJKgje-k#uD)bYN~f z>`;kPuHISBhX*vRP&cj&ui-vM<>5TKZbEms05VrPb6B}QC3NQSEV|1;if&QGr|W3-!xeoel`3TMOopuio$O_8n5(9Bbr?r?hOB+ z&Rr}DU%WAgQ1Wsnk`l>~WeR31d}$+D$^#HB0<9Hs2YQj}adO%oq zDy+5h?Quob{;u*kQB#oPm2;7Qk!mlVbL&rxJU||V;&*8| zg_cOp=$6y=snxAQa?Uw9ll;RA@7bgFouJbN-7@@AuBLK9A8YB=S-wSH$Y7m3jr$Z- z&?QgY_h7eNtggc6A)pJ7`aJqmZ?0rS7{~X zcI5#oDIcSQZQ!B0w~X?8@&$zv@`)n(1lOuER{q=|p8~5>Q@O)1a!x+mJc!02Wqx>V zxhP+bt)!0H74O%T2aQG}|A!8~MnxD+raxa-^r&>+Xi9A5fb!_jDiqBsie~lEC0YP< ziB5~&(MOl)QnevRmjPR%hG->9s_c8$r7|IB{kSCQ>E^@tF=VcYbCa0Ds933TXi_yE zripGL>qVf>7D}CABwxZwL=^EnIw0cAtOHTnU*1$DcdOcpqwQo+08iTVMSk?Nnb0?$ zL*3C&T7EE~)q_#-xoBszu>|2QD0(eFdO1FSv3Gt_NA$;LYcYabNo;6WEVcQRQqfpu zQ7luf=!{q%T*6pjQfz#8>=qIT;3*k*8)9<-zjB$kE&A} z+ob%4pXvb?+uX#bl*gW^Lb0cdVo&$M7~6_wLwYewQOr`Nxh>|@E6py}3WmX=SdiQk z#AEV~$4>Ua9P3hHj(r0#H=u@O^5#o8i%3B{LOY=KIdb_WoT+V?_Na<$zJQa-C?if9 z(U1xq7GTM#M%+=Q^H4$~M%$1|T3^6p7IdKld1x_WbPcI-&32$x8P37h{{@5^7Irku zZLJ4ZRiTDOMGcEogl=d<->{=$H>nEYJ3#v_A)Kon%pIdyu;i-{9>TcEze9Kg{23(S zd1dZ+j81gG4t?RkcMzj-WM^Z}ffu2SRj4tqs4)-TB`Ox78I6T$5a-7AR^RAvlu5k= z%_v4rOVEry+Dmyff>eZY+4#NjcwOk=LDY>7P0%;~v+)}6>HXdo zuJWnzI{7G!r|Po1n$i#26+SfO6gB0jnRGXeKJ;c!(?pUNf!p6xh9*M-5t^#n7De#e z3}Yp~VT#9-kCxn?);2$ieHqNdZC|~L$K@~!+LAxU<^9|4JB>>iV;6skzsz5$$*#G( z=7pMVHT!E0)wI{VUh`JX2Q{Z^zO3n}xm5GLpb-WLDFQ1D6Li7^;dWt?FjXiK?iB73 zmJ6$eHNr;0C`MCLG^JnG@=I_iuSyC;T7M-QgGTt)XGSgCO znQvKPS!dZ`*=+fpm2L7)>T%6b&J(# zHCcC9cUwJH$=YN+Y&~f`YrSB-Wc{f&r8d1byLLqFgxZqYS+()|E6Mv>^?l-@by-rrii_UIm|L;p0ZAYFS%lHy$}4`JuTh7U-9?*)HOD gHSveF-{LX-2CFlZp564!v*g&k6t*qcgCEoUA0ySK9smFU delta 5767 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 diff --git a/.agents/skills/multi-agent-mux-ui/packages/mam_pty/lib/src/pty_session.dart b/.agents/skills/multi-agent-mux-ui/packages/mam_pty/lib/src/pty_session.dart index 0b00bb1..ff05653 100644 --- a/.agents/skills/multi-agent-mux-ui/packages/mam_pty/lib/src/pty_session.dart +++ b/.agents/skills/multi-agent-mux-ui/packages/mam_pty/lib/src/pty_session.dart @@ -108,7 +108,7 @@ class PtySession { final chdir = libc.lookupFunction<_chdir_c, _chdir_dart>('chdir'); final fcntl = libc.lookupFunction<_fcntl_c, _fcntl_dart>('fcntl'); final unsetenv = libc.lookupFunction<_unsetenv_c, _unsetenv_dart>('unsetenv'); - final cExit = libc.lookupFunction<_exit_c, _exit_dart>('exit'); + final cExit = libc.lookupFunction<_exit_c, _exit_dart>('_exit'); // 1. Prepare master PTY final masterFd = posixOpenpt(2 | 0x00000400);