From c598eedffaa71e9beeaecfe052865cf7bc6615f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torbj=C3=B6rn=20Svensson?= Date: Sun, 1 Nov 2020 14:46:59 +0100 Subject: [PATCH] Bug 568079: Cleanup of native code MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Unify pointer checkes * Avoid using negated conditions. * Reduce scope of local variables when possible Change-Id: Ibacd13126351019af544f3e22513654d5ffee342 Signed-off-by: Torbjörn Svensson --- .../os/linux/aarch64/libspawner.so | Bin 29048 -> 29048 bytes .../os/linux/ppc64le/libspawner.so | Bin 75160 -> 75160 bytes .../os/linux/x86_64/libspawner.so | Bin 24032 -> 24032 bytes .../os/macosx/x86/libspawner.jnilib | Bin 24144 -> 24144 bytes .../os/macosx/x86_64/libspawner.jnilib | Bin 20176 -> 20176 bytes .../native_src/unix/exec_pty.c | 14 +-- .../native_src/unix/exec_unix.c | 12 +- .../native_src/unix/io.c | 2 +- .../native_src/unix/pfind.c | 24 ++-- .../native_src/unix/pty.c | 2 +- .../native_src/unix/spawner.c | 18 +-- .../native_src/win/Win32ProcessEx.c | 112 ++++++++---------- .../native_src/win/iostream.c | 8 +- .../native_src/win/pty.cpp | 27 ++--- .../native_src/win/raise.c | 4 +- .../native_src/win/spawner.c | 2 +- .../native_src/win/starter.c | 45 ++++--- .../os/win32/x86_64/pty.dll | Bin 1037433 -> 1037433 bytes .../os/win32/x86_64/spawner.dll | Bin 335721 -> 335721 bytes .../os/win32/x86_64/starter.exe | Bin 402292 -> 402292 bytes 20 files changed, 125 insertions(+), 145 deletions(-) diff --git a/core/org.eclipse.cdt.core.linux.aarch64/os/linux/aarch64/libspawner.so b/core/org.eclipse.cdt.core.linux.aarch64/os/linux/aarch64/libspawner.so index a9921d7f546bca938af60003fc7175f6ae8e22e5..d3930213d00fdfb1a1c16a56e485e049fe41a5a0 100755 GIT binary patch delta 2213 zcmZ`*eQZ-z6u;+n3_2Lw7_;lP?!C4fEdwbySn24t*9|s-jKDTw<6~Bqfy4+1iVltI zfCLCp`aHnIiMD7WjKnaW5R0M(5;2P=f||e|gfd4U`UfH~sR^0qzP=(5>>u~O^YuHQ z_uk$cfO`WF^c(lgW7=;|-x@cJKUMV6r^~;a?ru2Kzw_dj*2_KH4|~)vU{HVwc-ml6 zkETd~@2BLdH%5fOoLiT$O|Gp5#>TPHtN_C!P0)mqkvCxn9v-Jvs80%mVyNq=Ln}hwvDd1P*#!|z`cGmtzd)p?pH2s+|5W-dF zmjuazKbw~dvISjv^B{nm^YS62?#tUPKny2X?1EH?^DQ<(F2r>f8!5bJX@e*ZS?tD; zsF347SyZ(Zo&!?9Y`Yx!{BfDTSZTrY zvr4l#A`hMW_J9IqXAp~t%{eUMvGO8w;RM+|$Hz%q<`8(}5ZSIjJk7ANW!D}GS7 zBV@qqHh|#@5w79s3e((9jVDJewDbD%ut9bvN*b7;3>t*qt*L>A0R!}2)#{(!`!4B* zs^s`g9q%j!cL}YPVqv?EW_ThRwpKn>{HktTs2d;VnXOAS$Cp9Xr%Gqz{>uD`GHE39 z)2b;sl%BhZ6!!5R?{CNf8l;VmA+q(lsiPrz0= z(oZ;#^wRH8ULzj&c$V);eS!2h%AJuZ1ojRIZW~z1F50PDB{4&G$q)4XNE%Ux(ndVq ziB@t9EYLsz5rOQj`u8x&lMX`EUOpr~lEsP7M}dEHo4Z_(_K)w59PSPf^D2TY!d|q> zrvK*I@z^{Q9iBwBqZS_10h9CwqWL^e#x;a<19!@^a@G*;}Y7rXHO6wN%RojL8cW_m8 z8GMTes!Qp9JzwpBix{t#asy5!Ml)!m11T^Tw`R&6kjXmIa9WM%v+>aA2+-Izg&cC^ z%$?zGi2^Y3h7#RN^uzL#M9U=4(B&VXQe(9WqVgLt1Vi8gHTJ@0 z^vx+Po~wt%?+EVbX`<`NG1cwDd>+=S*)1CCm>B3G+r$i&xlIOE{kp|9!AeEq4n*+b%j9Ql`T@T|l4}-KV9L-=*Zju$R z&XZ8N_j7olmS=vv)=pRdC0eW0`?W_>F+$LmQ(p2dq_ni(Ffcln=`3>|j%%j( z4}Hxhkg%oMWuB@(*-6!A?PE0aVz}9bN1L3Oxj2p)Od872_I#V}v z({Ks&T#u?#SGE)ay|GT%JZMWRP^{?r$@ZcUk5wXxc|x+IE0s8b{UiZ8gemft=s6-gL2{`qJnyA KK~-6MUHBI%xZ;8U delta 2253 zcmaJ@Yiv|i5I%FauWc#aw%~UAV0XK1w-4%CiY z4~ajZ*GVh}WA1|SQG-%1pbH6ZLsWt`VvQk2k)@)5CfbU{uCF@h?p>rr-5>Ydnfbn% zIWu$i+^I2`8iRh9e)m$Q{&o*-D26$wr?cwLdE+;IB#b)_W&f3MsdBPHIRV!MycnLO z91pVqWGbJAzXK-L5aflPojS%6SPTn8PoxnV(Hr>_Y{A!~isO68!hf&P8qZ=`5>7-p zOkov4ZEaX^J*n|CuteVgA7h`sLAX(i7xec-qY}^;>LOWpPj}b$Zly4G!7LDQo#_d| zmx`a6Rto-9bR;hY3qF;c0;2MK@<9RIn3ZM|d}+8WEnV=Z;pVh-0z8-21unduX48vi zi2{!^my$m3Lm>F~W)&W1;c%tU5)Fi0Y;|bJi_C@Ft-S=iZB>CO=_;@?{mH~=x9aRT z^PBO^gZ0s(h5J^;n4;WhUr4lIC5g-$vMSq(B0wP0uHqtaDQ_1eq{>zah->v(r7;~F z^y_qkXMdd@V9cHH7OpK>p%*iQbQhj3Nr!&CT(annj^Vu0tl8Tcn&Men=!+I$&O7q>kldWY_{u}o<-UM?$)=N@^w zGzfEe4rkC>Zi53@SH3FtI%m-~E>N_Kc&xk~Ix)PW6}r(`u_)D*8LX8%^G>baBm%G1 z6+Bj9h8s9iVO+9T)rnpUt-Pi@ZSdQJWwc~T*L1?*z6f{Am<|T7sx?m>ln5(Vih(lC zpO2FJ3iB76d)I5;BL2tQ(a4$Jc4*$LnzvW@RyPMbbaggsld1goaSWB6x5O7sy1by> z3aqV$Y+4!S1*`7Ml3tn&ZWYOyCx!aw5WUTKlTs{E!-(EXg!r!wpVQAwu~AEHCr?ca z%_y|IPxOwEpBX)8cBzMSJmLp@4dDgCZxegH1>~%s47YSF_W-R_)m*^iIRTLPQyM-Kh!-;Rz-UWIO1(0bB_%KzG?GNJdk>T&0Get6Ak4#2R54cHr z4P!+!9Kw9jICIwXs8-b4r-`7>x}9cS)14q4pY;XUN8BILBbLqGOuD;v-_K;bl#CN% zUVJYPNo`aomptym{3;tP$L6XA*pDw%6~bX0sj@>3PLjS2P1R=Tz!G}yM`yK7&`si= z>LPd_PgWPge7sq0hp#cd#*$>omi#o7>2yK`#sXG@xDyO)rvaDLn4Q@?A375>$8EA* z^q&7^dcZ;jH1f`oe4OOF?LLx4vd3w5nPl0>0jw~Y4hrD8W^3_ST?l;6FTU+#HtP>M4_|8VM zYzT9Os&$q zno{pU@0v<}asRfa6EYNMrx{FPH9<$`HGeJ3MwA|T6_T*TwSzAFAy)%zQ39?j kv*=R$VxvQU=L-YlHx=s*+V_S5n@Q@?_SK_Eo30Cg0}NRKNB{r; diff --git a/core/org.eclipse.cdt.core.linux.ppc64le/os/linux/ppc64le/libspawner.so b/core/org.eclipse.cdt.core.linux.ppc64le/os/linux/ppc64le/libspawner.so index c4b0c33d21c072169473a9db69f532f5e95b185a..fbe99876e49058ed53abaa61df5aa7977197fe8f 100755 GIT binary patch delta 2350 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 diff --git a/core/org.eclipse.cdt.core.linux.x86_64/os/linux/x86_64/libspawner.so b/core/org.eclipse.cdt.core.linux.x86_64/os/linux/x86_64/libspawner.so index 3f888bd9a18565a6b3c9c385e94d6b2624fb29ec..207c21ebe2a252ada6c6aa77bf418f9e7eaa91ce 100755 GIT binary patch delta 2793 zcmZWr4N#P29)F+ZYe587SlN|@T||UMU_pXq70wV>ULfjpt~o_3FHy1aE-g6Su8nCH ztaWca;D25fKDEw{{7ZP=-)h(VcVRbSb9dYpdm*l;EiE{hs$-keOrj|9hYR z_s8=*`-~i8Bga_#y678=1m*8W$L3yLYl*s;LUOP-lE&xv_dL5yv$f=(ww=FjkdlmP z3C6%R79Q3aWe8{^#u-Z@7WD}0q7_le#txh6*>uSSP z;h%syAx>5Rz(%BhW zV0x0hM7vFyT1plK(Xa0a95cPm(pvRcc?YC36S6G&B3jceg6PA)MwgOl);v zZ<>y=P4terK--w4SZ}0J^E1d~wZ)X?N>p8(xTUz*YMyj42p3NV$Z|`g9ZcY6#lzH@ z;ncpZE_`%8V?ov*l!bm5Kpqmk&T-M>9v7O^MW1sRX*R364l0~?i&c;{vw;0FP@nlU z)8Cv4mp=VGBM%oNdOw2yD|BxDY_^|%od1w^Rh$y?Evn9%%L-^qmR$^2h`_m+aXtr^o%O(3FWpUga%m>uWNiFZizO0&h_C ze!&~}(luEQCPENm{);m;-^+4u3x+JMqVKckh@S^#*)uLT$BO>)hhxFcy)Mf>=f9!) zw`rnEF48HYOAx&>O;pN7Khe*v`Lka6j@$MHb!rv^(oSl(8rXF@XswCSAf2{8SDa*} zyVg>+j!JTtu{HF&oV1qk8A`+I^wSzP9s{2D%cFchN}s{;Q5k<%ORym^2bBMm$88Xr z8brTygcqiT3f%ufT5=Uh2;ht&N#1;4#8?t{EL3}kx*vc$3~vsP=r2B|1Zf#iqilo= zWwQj~`}XJcL&a4kJE)tXdzfo;3!J?V2N zNM|ANI)^;&A;Bd|3no+k2Twui%1EL`?Mll~_rq$=k!sHSqv6RL%6TOMs=fapltojD z&pCnwc?FYuXCF+YE4=jx{WKTw={S7OAt<&WrgZxX@;M>h*twLQLf(wIN;gBz--~6FMa{xs8U2)hP(E;{4`cV zujO0V9_q#G>%bY}DEmA?fG^ zo3(!XWxfr@Jnk{U6{XBE_?*u<##;t6>?CxNujES@^F17~;2M>&8;1AABV2r!i_1d# z7l{=lru1hDhsaOM#gc(eDd#B6mcf zDMj>t!Q#j={<)Cu7Br*eR*YC^zY zbW_u^MPN9%!s_p}3V`q*4JF&F|9GL{% zWES8`+|myMw*eb~60j9Gio5?U;6?m?d<-Ap?gY+2aE^>oP^g3t^eNdXgBIp9X*AjD>*&<2@O{NOaJo**rL3+_) z&g?}|%KN7xE@7vpa%QB{6Bbqx78`{lYC$s_dBN20$gtMjkY(j9G+pzwstHBGg#SmN zEs$=JnO&wr&_Y@P+E3d+HPivRD{y#GX&6nESFx@@#m~-%>cirNR$75o zV_Ray1l~xmEw>rli+Cu^NCn|Hn41QVvUa+#yo$AwwdxGB5EJ*q z?Lo0Odg>7u*jBxXv06G?vjnd;W37$7N!7JK{NMX9JaY1VxZaS@22R@CE>Hq)$ delta 2846 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 MnDP8(MtgsG09kOLhyVZp delta 444 zcmcbxhw;K5#tmy&1O$0^te)6u#@CQ=Z1beQVIG_JuxKkVZkzlhOunfur{)V(-~0n;lpt93f!+>vai9r2DlgiB zGTp9EfEr(DOqSJav|2qoKn1VsfK~JmZPU3pK2HT=*Cm()9S{ zTYwg9zNb;g$hcv0tkx7p>B*n8nz^SlgFN^E=)r4~8?^lyZ6{yQ?g6RLnZqc&_?Hf& zTDPk}vjtEd;@3M!el_9*`PBmK*U7wk5^^G70TZCWj(VVN$5~WBRA;LJP~^qg$q9OL zOdKqe8}#%Tr%hh3C&_qW@<}~4#>&Yb^yC>MCkyCX^Ic_UV3+_0oBj1;`GN7V)-IUw K=w?QHe|Z2+{+pHn diff --git a/core/org.eclipse.cdt.core.macosx/os/macosx/x86_64/libspawner.jnilib b/core/org.eclipse.cdt.core.macosx/os/macosx/x86_64/libspawner.jnilib index 779387030871d7ff70894aa466a4ed7ccea73600..9dc26b6aeb99453cbc68a490f2acbab1391360b2 100755 GIT binary patch delta 3275 zcmZ8keQ;FO6@Pb=4V#c<^ZiNK0Qqpq2Qke`%#a!i+gU875sP7J3ZZKGiZy&_!jw0= zo!!+uA1lFItuh0ROsrvs!KLAkq$Rl24$xZbjw7NDcEU6>+-*^pX>3!eY=7szmk_y3 z-h1cwJNN$1J@=fqkJwQbJIV(7vmdUowh9*J1GYu%IDgYt zXgga@%h=D3{MA;>SSuIl_3QvI%xGt;`Sy%`Y%~8fV@G3am7*|5XeoB;4Y#&nVewok zo&(d0!3k-#^$#yV9+_OXx<&b4k4OHJrlkZ3gq> zStcq@8_dH7vwD_^A?i>0v|YEnwwPC!F6F}uI@m)mI%;ek6hYYD!N28r_Q59+E3~@l z1f`2MI|JKzTqQ`*aqd?ACa3OFjKbBq0k7mzv#5KaxO}vr6n_XO(V@~-IQ4W(z$>(2Z z7uEhfPpZUg3|N0!hz||O5MFQxALXlZo?(~yXwCulId|u-W#8w%+(uTQud`?P zn+4T{1=ubQchDP92Ng$XGh#rJ+xTY%l|E0dVQ}K15!DNEnf6o zMO`E{PcWWI4H!@(iX+%dQ^IOOjKPKK{$PcH2=T@Yl4Bqf;w2Lauat=UT`=CTFaJ93 zV-1Aq))$KC)(p{Fcq4>C&EpqUcs2uwAHosIP(>Uy+PGkOhW4>1#??bfW zRb*Rl7VBuOusbLP^Lt6}e(4V{UoyE?i$d@$e5GJ$A59&BIitA{no=h8D3ea3Vkdc1 z60}ec+#SI%7Sz=#(E%bbjS9;og>Y*V)WpjGbybL#yU6MsrAra}B|9O??qW-5Y9~M{ z)PzXI(>dr{3i2k-)vVb`Ewr7WzX8%hkK^$zD}2RH{zZ|?cTA#PK;u`)>zuSZ z>2U;)`Zzsm7leR;ZAG!fCLoUBGTMdiiFyOgIPZnhQU|^I)0glbh>A^eogczAj*^l2 zBTlqPydC&kKHw=L&CU-Mmp;UR&&`e_8zHsl0MqQh-_%mq#6*n)1~HVS}*L5BgN3%Mw+dLCV3f} zi)S@uwG_?K{9LvLWI`+OgupI|_ptCc>gOQC`3KY@IN?`N5p|d^lR?Qxd;AaDVhXcn zHgW_@>1r0LXjI%zrL7DF)FEu;VHuhAAJoJ$dsJP*ZR|vlZrELJ?1ZX)Y`w9Q_V3MZ zWz!uQEwm1Byk71A!3FWt2-$=vfY00-%%%7?l8Blm{>x9575c6qDv=4u_^1$!*m3&4 zKm*+;=bOca{pHd86o51PJAn?4LrgaHkT`;pGn;zI_%0F80iuj)p_N$E5u{9+O+F=d z+T0}EOwm)vnZ%ITfLU6o3AnBfiEm4*0haL=i1Gc4T)tF^*3w*h3*ew)*!nUogBFi{ zqs51D0QlC}7!%j#(Zcu8B(udOC*GEL1xZkgi$kzw(FHY_^2n*5Wa54ye=>N1b6LTo z`~i0{C)ogc>a6+VV*IlqQ$A5X7)fNke%>#A87-(6Ro z?!As3U^Mc@wN7B?fqgWK?XGpECroP(&#qgM(I5=}>nZ$q%bm7=8djLNbgyjwWb%WN z^Yv%)x+8WaMVTnZCAJV3{}Q@XDvD*#6I&l|P_D4Yx}VznM1yjbr6`d~@^yji-LqpK zz%OUmufPs20~@UY+n^k@Z0XszUwPSr#p(bjnrK;mZS^)^#2!lrOUxT!6X{V)g8A_;NF9M1xR(3~_$`8* F{tsHSZNUHl delta 3231 zcmZ8k4Qx}_6@J%=gH3*%Kj*iJ6Os_p{4~v)ks>kz#hVGVO2tM(#TF1$EfOn%hC)@0 zU2Jc8JY2%=x`h>xtEMBBXq6I%h_--PyOMU=aJ5ba#PlS zxjBRM4JyJ@EWJLHnEgYEEx~@hYG7qN9*4zGVW9?EAgl>GKXGZ!9+$>fTgsW6cUg+r zetyW3YdK2(!PKKe?^yB~E8?TpI<|p-ZEa&^+%> zu<=Ja(maEN#k)H4Jsl~VK_ZBHgkMh8OfQ%6+`=;6lh)22=3{Bqmc0ZpUY`E=}6uTG6=F${D$odmd!s-uVNkiUi!M)pW7*^ z<39Iz+!jbhP9DCaxhF)Mu8y9C=9~!=DVOto8TmP-2BZ>XHK0uXc1C{gf3xLg(WeNq z8PJVv{_l*un)eK>T32hkggB$CbndiSeIGB)e1ZLi_hs&7f9LkBRjihGW;L)h{;RAF zmSf;|1?_*}cd}Mk*6PB3-jZEt*)N6EeSC9vt>qpzhuLc0m)*sl<5v4i>=X~!H?voG z)cz)0#}DOH=H5wxk?IV&eD0893;YZ*;8IKY-*PHE6Vwa%_E|r?b zw}~X^v0ubOARlpHytY4Z44w z?(b4Z_8?mEB22UuntM_#2H=}Qks;+EZO#UpcmYbyEkwb6;Ji#_qaxNzbWD7U zx}58JHv_Iq0aC5T#5mw{;HMf@1KTLbk4dGM?YJ6vmQ?4UQUhDCJa2}rXyupksyzFo zb|bXWPs!@IlsC|lW2ueMQvE=TLU3u1hh4r$u}cS(wg6Hp6XVi$jf&;c@y7t7xpVaB z)v&0RSR1hO9-_XD6v(vs`TqQ@CnrdplbO5eupuAnxl8wfUl5ok!EtfwK5&e{+bR6B z{BrghPcA6Rbi=~9EzNn&rKO(XOA4yy-Az^$o1=wqFKDtIk(;1Y=se=I+tEc;D*x7h84D4Lt6&zAK@|lh~$@6dS&`y3cdm3 z(qEb-jIKj3>fNv&TGe^l=RU1ddf;MygL+$X($$MwR>}D~?H6pkg6x8`oj99yPO{QD zGiEqtkyz$%-jLk@nm`R!2y9fG$HvHBc)Di%2N^2B=gxx>ekm1E1b>+fSxmv^32=*X zco~_C9>P|dI~_H4R@_RYqxAdS{W!{6{Wh*r@5+-J==wzR{~s)-&vzV+8wHu{<$iGhkkQNi`X`Cl4Hacf4J^f;Ha}&` z=J&vNx5*Qe1(3}(K&Gr0*qbl(jJ{gCuIDVVVB78@6yUFq|{!#TpR?lx&SF%Ms zzowG4@#UDC_*Tqa{4nOTd>C^JzmB<&TWgoG9=@u!l6m=#+DhxQpCdwy23}g@fbIfx zQ!~09H4baK&@FcIjM~N4Hbc6`*Vj3$7TLq`cu-;;hVn|flwVDwcY%f<1Ugm?v|c%A z>g?)%QTdGto7Iw2Bc@({{jp~}k<>_1$kf(r+88qpn!O42AycoZCB$01Y;0aHi&(>^ z81v#^n0^uzr2`Gpq9iJlcq61iRf3MAk$|!#xdqokBg>F`4Y|aSLwG&XsMF<4B}R3I zvD`2y;a65ZT9PF1&4M)WVkR6*LNsPD7sl qkHld^F2QdgjrVkUff6zZzcvg)Il94jhMdmda(b9|sOpC&EdK``d28ta diff --git a/core/org.eclipse.cdt.core.native/native_src/unix/exec_pty.c b/core/org.eclipse.cdt.core.native/native_src/unix/exec_pty.c index de5b86a5b3e..fb669736037 100644 --- a/core/org.eclipse.cdt.core.native/native_src/unix/exec_pty.c +++ b/core/org.eclipse.cdt.core.native/native_src/unix/exec_pty.c @@ -65,7 +65,7 @@ pid_t exec_pty(const char *path, char *const argv[], char *const envp[], const c chdir(dirpath); - if (channels != NULL) { + if (channels) { int fds; if (!console && setsid() < 0) { @@ -116,10 +116,10 @@ pid_t exec_pty(const char *path, char *const argv[], char *const envp[], const c } } - if (envp[0] == NULL) { - execv(full_path, argv); - } else { + if (envp && envp[0]) { execve(full_path, argv, envp); + } else { + execv(full_path, argv); } _exit(127); @@ -128,7 +128,7 @@ pid_t exec_pty(const char *path, char *const argv[], char *const envp[], const c if (console) { set_noecho(fdm); } - if (channels != NULL) { + if (channels) { channels[0] = fdm; /* Input Stream. */ channels[1] = fdm; /* Output Stream. */ if (console) { @@ -173,10 +173,10 @@ int main(int argc, char **argv, char **envp) { } else { fputs("foo\n", app_stdin); fputs("bar\n", app_stdin); - while (fgets(buffer, sizeof buffer, app_stdout) != NULL) { + while (fgets(buffer, sizeof buffer, app_stdout)) { fprintf(stdout, "STDOUT: %s\n", buffer); } - while (fgets(buffer, sizeof buffer, app_stderr) != NULL) { + while (fgets(buffer, sizeof buffer, app_stderr)) { fprintf(stdout, "STDERR: %s\n", buffer); } } diff --git a/core/org.eclipse.cdt.core.native/native_src/unix/exec_unix.c b/core/org.eclipse.cdt.core.native/native_src/unix/exec_unix.c index 5f388a8bdbb..e393cfff6a0 100644 --- a/core/org.eclipse.cdt.core.native/native_src/unix/exec_unix.c +++ b/core/org.eclipse.cdt.core.native/native_src/unix/exec_unix.c @@ -43,7 +43,7 @@ pid_t exec0(const char *path, char *const argv[], char *const envp[], const char /* * Make sure we can create our pipes before forking. */ - if (channels != NULL) { + if (channels) { if (pipe(pipe0) < 0 || pipe(pipe1) < 0 || pipe(pipe2) < 0) { fprintf(stderr, "%s(%d): returning due to error.\n", __func__, __LINE__); free(full_path); @@ -60,7 +60,7 @@ pid_t exec0(const char *path, char *const argv[], char *const envp[], const char } else if (childpid == 0) { /* child */ chdir(dirpath); - if (channels != NULL) { + if (channels) { /* Close the write end of pipe0 */ if (close(pipe0[1]) == -1) { perror("close(pipe0[1])"); @@ -94,16 +94,16 @@ pid_t exec0(const char *path, char *const argv[], char *const envp[], const char setpgid(getpid(), getpid()); - if (envp[0] == NULL) { - execv(full_path, argv); - } else { + if (envp && envp[0]) { execve(full_path, argv, envp); + } else { + execv(full_path, argv); } _exit(127); } else if (childpid != 0) { /* parent */ - if (channels != NULL) { + if (channels) { /* close the read end of pipe1 */ if (close(pipe0[0]) == -1) { perror("close(pipe0[0])"); diff --git a/core/org.eclipse.cdt.core.native/native_src/unix/io.c b/core/org.eclipse.cdt.core.native/native_src/unix/io.c index 4805e9a6227..b29c4357b5a 100644 --- a/core/org.eclipse.cdt.core.native/native_src/unix/io.c +++ b/core/org.eclipse.cdt.core.native/native_src/unix/io.c @@ -24,7 +24,7 @@ static void ThrowByName(JNIEnv *env, const char *name, const char *msg) { jclass cls = (*env)->FindClass(env, name); - if (cls != 0) { /* Otherwise an exception has already been thrown */ + if (cls) { /* Otherwise an exception has already been thrown */ (*env)->ThrowNew(env, cls, msg); } diff --git a/core/org.eclipse.cdt.core.native/native_src/unix/pfind.c b/core/org.eclipse.cdt.core.native/native_src/unix/pfind.c index fbe3b73ed40..bf96c882895 100644 --- a/core/org.eclipse.cdt.core.native/native_src/unix/pfind.c +++ b/core/org.eclipse.cdt.core.native/native_src/unix/pfind.c @@ -33,12 +33,11 @@ const int path_def_len = 5; /* strlen(PATH_DEF); */ char *path_val(char *const envp[]) { - int i; - if (envp == NULL || envp[0] == NULL) { + if (!envp || !envp[0]) { return getenv("PATH"); } - for (i = 0; envp[i] != NULL; i++) { + for (int i = 0; envp[i]; i++) { char *p = envp[i]; if (!strncmp(PATH_DEF, p, path_def_len)) { return p + path_def_len; @@ -56,7 +55,7 @@ char *pfind(const char *name, char *const envp[]) { struct stat sb; /* Sanity check. */ - if (name == NULL) { + if (!name) { fprintf(stderr, "pfind(): Null argument.\n"); return NULL; } @@ -72,7 +71,7 @@ char *pfind(const char *name, char *const envp[]) { /* Search in the PATH environment. */ path = path_val(envp); - if (path == NULL || strlen(path) <= 0) { + if (!path || strlen(path) <= 0) { fprintf(stderr, "Unable to get $PATH.\n"); return NULL; } @@ -81,7 +80,7 @@ char *pfind(const char *name, char *const envp[]) { path = strdup(path); tok = strtok_r(path, ":", &sp); - while (tok != NULL) { + while (tok) { snprintf(fullpath, sizeof(fullpath) - 1, "%s/%s", tok, name); if (stat(fullpath, &sb) == 0 && S_ISREG(sb.st_mode)) { /* fullpath is a file */ @@ -100,15 +99,12 @@ char *pfind(const char *name, char *const envp[]) { #ifdef BUILD_WITH_MAIN int main(int argc, char **argv) { - int i; - char *fullpath; - - for (i = 1; i < argc; i++) { - fullpath = pfind(argv[i], NULL); - if (fullpath == NULL) { - printf("Unable to find %s in $PATH.\n", argv[i]); - } else { + for (int i = 1; i < argc; i++) { + char *fullpath = pfind(argv[i], NULL); + if (fullpath) { printf("Found %s @ %s.\n", argv[i], fullpath); + } else { + printf("Unable to find %s in $PATH.\n", argv[i]); } } } diff --git a/core/org.eclipse.cdt.core.native/native_src/unix/pty.c b/core/org.eclipse.cdt.core.native/native_src/unix/pty.c index 8ce91ee17a0..a0800620ef8 100644 --- a/core/org.eclipse.cdt.core.native/native_src/unix/pty.c +++ b/core/org.eclipse.cdt.core.native/native_src/unix/pty.c @@ -42,7 +42,7 @@ JNIEXPORT jstring JNICALL Java_org_eclipse_cdt_utils_pty_PTY_openMaster(JNIEnv * /* Set the master fd. */ fid = (*env)->GetFieldID(env, cls, "master", "I"); - if (fid == NULL) { + if (!fid) { return NULL; } (*env)->SetIntField(env, jobj, fid, (jint)master); diff --git a/core/org.eclipse.cdt.core.native/native_src/unix/spawner.c b/core/org.eclipse.cdt.core.native/native_src/unix/spawner.c index c02c8d26130..a092368747a 100644 --- a/core/org.eclipse.cdt.core.native/native_src/unix/spawner.c +++ b/core/org.eclipse.cdt.core.native/native_src/unix/spawner.c @@ -102,17 +102,17 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec2(JNIEnv * int fd[3]; pid_t pid = -1; - if (jchannels == NULL) { + if (!jchannels) { goto bail_out; } cmd = alloc_c_array(env, jcmd); - if (cmd == NULL) { + if (!cmd) { goto bail_out; } envp = alloc_c_array(env, jenv); - if (envp == NULL) { + if (!envp) { goto bail_out; } @@ -151,12 +151,12 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec1(JNIEnv * pid_t pid = -1; cmd = alloc_c_array(env, jcmd); - if (cmd == NULL) { + if (!cmd) { goto bail_out; } envp = alloc_c_array(env, jenv); - if (envp == NULL) { + if (!envp) { goto bail_out; } @@ -189,7 +189,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec0(JNIEnv * jclass channelClass = NULL; jmethodID channelConstructor = NULL; - if (jchannels == NULL) { + if (!jchannels) { goto bail_out; } @@ -199,17 +199,17 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec0(JNIEnv * } channelConstructor = (*env)->GetMethodID(env, channelClass, "", "(I)V"); - if (channelConstructor == 0) { + if (!channelConstructor) { goto bail_out; } cmd = alloc_c_array(env, jcmd); - if (cmd == NULL) { + if (!cmd) { goto bail_out; } envp = alloc_c_array(env, jenv); - if (envp == NULL) { + if (!envp) { goto bail_out; } diff --git a/core/org.eclipse.cdt.core.native/native_src/win/Win32ProcessEx.c b/core/org.eclipse.cdt.core.native/native_src/win/Win32ProcessEx.c index 1ddf55ce21b..38959c98125 100644 --- a/core/org.eclipse.cdt.core.native/native_src/win/Win32ProcessEx.c +++ b/core/org.eclipse.cdt.core.native/native_src/win/Win32ProcessEx.c @@ -121,10 +121,10 @@ void ensureSize(wchar_t **ptr, int *psize, int requiredLength) { size = requiredLength; } *ptr = (wchar_t *)realloc(*ptr, size * sizeof(wchar_t)); - if (NULL == *ptr) { - *psize = 0; - } else { + if (*ptr) { *psize = size; + } else { + *psize = 0; } } } @@ -147,7 +147,6 @@ extern "C" wchar_t *szEnvBlock = NULL; jsize nCmdTokens = 0; jsize nEnvVars = 0; - int i; DWORD pid = GetCurrentProcessId(); int nPos; pProcInfo_t pCurProcInfo; @@ -168,19 +167,19 @@ extern "C" jclass channelClass = NULL; jmethodID channelConstructor = NULL; - if (channels == NULL) { + if (!channels) { ThrowByName(env, "java/io/IOException", "Channels can't be null"); return 0; } channelClass = (*env)->FindClass(env, "org/eclipse/cdt/utils/spawner/Spawner$WinChannel"); - if (channelClass == 0) { + if (!channelClass) { ThrowByName(env, "java/io/IOException", "Unable to find channel class"); return 0; } channelConstructor = (*env)->GetMethodID(env, channelClass, "", "(J)V"); - if (channelConstructor == 0) { + if (!channelConstructor) { ThrowByName(env, "java/io/IOException", "Unable to find channel constructor"); return 0; } @@ -236,7 +235,7 @@ extern "C" pCurProcInfo = createProcInfo(); - if (NULL == pCurProcInfo) { + if (!pCurProcInfo) { ThrowByName(env, "java/io/IOException", "Too many processes"); return 0; } @@ -252,7 +251,7 @@ extern "C" nLocalCounter); pCurProcInfo->eventBreak = CreateEventW(NULL, FALSE, FALSE, eventBreakName); - if (NULL == pCurProcInfo->eventBreak || GetLastError() == ERROR_ALREADY_EXISTS) { + if (!pCurProcInfo->eventBreak || GetLastError() == ERROR_ALREADY_EXISTS) { ThrowByName(env, "java/io/IOException", "Cannot create event"); return 0; } @@ -266,19 +265,19 @@ extern "C" nPos = wcslen(szCmdLine); // Prepare command line - for (i = 0; i < nCmdTokens; ++i) { + for (int i = 0; i < nCmdTokens; ++i) { jstring item = (jstring)(*env)->GetObjectArrayElement(env, cmdarray, i); jsize len = (*env)->GetStringLength(env, item); int nCpyLen; const wchar_t *str = (const wchar_t *)(*env)->GetStringChars(env, item, 0); - if (NULL != str) { + if (str) { int requiredSize = nPos + len + 2; if (requiredSize > 32 * 1024) { ThrowByName(env, "java/io/IOException", "Command line too long"); return 0; } ensureSize(&szCmdLine, &nCmdLineLength, requiredSize); - if (NULL == szCmdLine) { + if (!szCmdLine) { ThrowByName(env, "java/io/IOException", "Not enough memory"); return 0; } @@ -303,15 +302,15 @@ extern "C" if (nEnvVars > 0) { nPos = 0; szEnvBlock = (wchar_t *)malloc(nBlkSize * sizeof(wchar_t)); - for (i = 0; i < nEnvVars; ++i) { + for (int i = 0; i < nEnvVars; ++i) { jstring item = (jstring)(*env)->GetObjectArrayElement(env, envp, i); jsize len = (*env)->GetStringLength(env, item); const wchar_t *str = (const wchar_t *)(*env)->GetStringChars(env, item, 0); - if (NULL != str) { + if (str) { while ((nBlkSize - nPos) <= (len + 2)) { // +2 for two '\0' nBlkSize += MAX_ENV_SIZE; szEnvBlock = (wchar_t *)realloc(szEnvBlock, nBlkSize * sizeof(wchar_t)); - if (NULL == szEnvBlock) { + if (!szEnvBlock) { ThrowByName(env, "java/io/IOException", "Not enough memory"); return 0; } @@ -332,11 +331,11 @@ extern "C" szEnvBlock[nPos] = _T('\0'); } - if (dir != 0) { - const wchar_t *str = (const wchar_t *)(*env)->GetStringChars(env, dir, 0); - if (NULL != str) { - cwd = wcsdup(str); - (*env)->ReleaseStringChars(env, dir, (const jchar *)str); + if (dir) { + const jchar *str = (*env)->GetStringChars(env, dir, NULL); + if (str) { + cwd = wcsdup((const wchar_t *)str); + (*env)->ReleaseStringChars(env, dir, str); } } @@ -482,14 +481,14 @@ extern "C" jsize len = (*env)->GetStringLength(env, item); int nCpyLen; const wchar_t *str = (const wchar_t *)(*env)->GetStringChars(env, item, 0); - if (NULL != str) { + if (str) { int requiredSize = nPos + len + 2; if (requiredSize > 32 * 1024) { ThrowByName(env, "java/io/IOException", "Command line too long"); return 0; } ensureSize(&szCmdLine, &nCmdLineLength, requiredSize); - if (NULL == szCmdLine) { + if (!szCmdLine) { ThrowByName(env, "java/io/IOException", "Not enough memory"); return 0; } @@ -515,11 +514,11 @@ extern "C" jstring item = (jstring)(*env)->GetObjectArrayElement(env, envp, i); jsize len = (*env)->GetStringLength(env, item); const wchar_t *str = (const wchar_t *)(*env)->GetStringChars(env, item, 0); - if (NULL != str) { + if (str) { while ((nBlkSize - nPos) <= (len + 2)) { // +2 for two '\0' nBlkSize += MAX_ENV_SIZE; szEnvBlock = (wchar_t *)realloc(szEnvBlock, nBlkSize * sizeof(wchar_t)); - if (NULL == szEnvBlock) { + if (!szEnvBlock) { ThrowByName(env, "java/io/Exception", "Not enough memory"); return 0; } @@ -535,11 +534,11 @@ extern "C" envBlk = szEnvBlock; } - if (dir != 0) { - const wchar_t *str = (const wchar_t *)(*env)->GetStringChars(env, dir, 0); - if (NULL != str) { - cwd = wcsdup(str); - (*env)->ReleaseStringChars(env, dir, (const jchar *)str); + if (dir) { + const jchar *str = (*env)->GetStringChars(env, dir, NULL); + if (str) { + cwd = wcsdup((const wchar_t *)str); + (*env)->ReleaseStringChars(env, dir, str); } } @@ -599,7 +598,7 @@ extern "C" HANDLE hProc; pProcInfo_t pCurProcInfo = findProcInfo(uid); - if (NULL == pCurProcInfo) { + if (!pCurProcInfo) { if (SIG_INT == signal) { // Try another way return interruptProcess(uid); } @@ -612,7 +611,7 @@ extern "C" hProc = OpenProcess(SYNCHRONIZE, 0, pCurProcInfo->pid); - if (NULL == hProc) { + if (!hProc) { return -1; } @@ -679,13 +678,13 @@ extern "C" HANDLE hProc; pProcInfo_t pCurProcInfo = findProcInfo(uid); - if (NULL == pCurProcInfo) { + if (!pCurProcInfo) { return -1; } hProc = OpenProcess(SYNCHRONIZE | PROCESS_QUERY_INFORMATION, 0, pCurProcInfo->pid); - if (NULL == hProc) { + if (!hProc) { return -1; } @@ -713,7 +712,7 @@ extern "C" void ThrowByName(JNIEnv *env, const char *name, const char *msg) { jclass cls = (*env)->FindClass(env, name); - if (cls != 0) { /* Otherwise an exception has already been thrown */ + if (cls) { /* Otherwise an exception has already been thrown */ (*env)->ThrowNew(env, cls, msg); } @@ -727,17 +726,16 @@ void ThrowByName(JNIEnv *env, const char *name, const char *msg) { // Return : pointer to the process descriptor ///////////////////////////////////////////////////////////////////////////////////// pProcInfo_t createProcInfo() { - int i; pProcInfo_t p = NULL; EnterCriticalSection(&cs); - if (NULL == pInfo) { + if (!pInfo) { pInfo = (pProcInfo_t)malloc(sizeof(procInfo_t) * MAX_PROCS); ZeroMemory(pInfo, sizeof(procInfo_t) * MAX_PROCS); } - for (i = 0; i < MAX_PROCS; ++i) { + for (int i = 0; i < MAX_PROCS; ++i) { if (pInfo[i].pid == 0) { pInfo[i].pid = -1; pInfo[i].uid = ++procCounter; @@ -757,20 +755,15 @@ pProcInfo_t createProcInfo() { // Return : pointer to the process descriptor ///////////////////////////////////////////////////////////////////////////////////// pProcInfo_t findProcInfo(int uid) { - int i; - pProcInfo_t p = NULL; - if (NULL == pInfo) { - return NULL; - } - - for (i = 0; i < MAX_PROCS; ++i) { - if (pInfo[i].uid == uid) { - p = pInfo + i; - break; + if (pInfo) { + for (int i = 0; i < MAX_PROCS; ++i) { + if (pInfo[i].uid == uid) { + return pInfo + i; + } } } - return p; + return NULL; } ///////////////////////////////////////////////////////////////////////////////////// @@ -813,12 +806,11 @@ void cleanUpProcBlock(pProcInfo_t pCurProcInfo) { ///////////////////////////////////////////////////////////////////////////////////// void _cdecl waitProcTermination(void *pv) { PROCESS_INFORMATION *pi = (PROCESS_INFORMATION *)pv; - int i; // wait for process termination WaitForSingleObject(pi->hProcess, INFINITE); - for (i = 0; i < MAX_PROCS; ++i) { + for (int i = 0; i < MAX_PROCS; i++) { if (pInfo[i].pid == pi->dwProcessId) { cleanUpProcBlock(pInfo + i); if (isTraceEnabled(CDT_TRACE_MONITOR)) { @@ -841,14 +833,10 @@ void _cdecl waitProcTermination(void *pv) { // Return :number of bytes used in target, or -1 in case of error ///////////////////////////////////////////////////////////////////////////////////// int copyTo(wchar_t *target, const wchar_t *source, int cpyLength, int availSpace) { - BOOL bSlash = FALSE; + bool bSlash = false; int i = 0, j = 0; -#define QUOTATION_DO 0 -#define QUOTATION_DONE 1 -#define QUOTATION_NONE 2 - - int nQuotationMode = 0; + enum { QUOTATION_DO, QUOTATION_DONE, QUOTATION_NONE } nQuotationMode = QUOTATION_DO; if (availSpace <= cpyLength) { // = to reserve space for final '\0' return -1; @@ -856,19 +844,19 @@ int copyTo(wchar_t *target, const wchar_t *source, int cpyLength, int availSpace if ((_T('\"') == *source) && (_T('\"') == *(source + cpyLength - 1))) { nQuotationMode = QUOTATION_DONE; - } else if (wcschr(source, _T(' ')) == NULL) { - // No reason to quote term because it doesn't have embedded spaces - nQuotationMode = QUOTATION_NONE; - } else { + } else if (wcschr(source, _T(' '))) { // Needs to be quoted nQuotationMode = QUOTATION_DO; *target = _T('\"'); ++j; + } else { + // No reason to quote term because it doesn't have embedded spaces + nQuotationMode = QUOTATION_NONE; } for (; i < cpyLength; ++i, ++j) { if (source[i] == _T('\\')) { - bSlash = TRUE; + bSlash = true; } else { // Don't escape embracing quotation marks if ((source[i] == _T('\"')) && @@ -881,7 +869,7 @@ int copyTo(wchar_t *target, const wchar_t *source, int cpyLength, int availSpace ++j; } } - bSlash = FALSE; + bSlash = false; } if (j == availSpace) { diff --git a/core/org.eclipse.cdt.core.native/native_src/win/iostream.c b/core/org.eclipse.cdt.core.native/native_src/win/iostream.c index c63d2cfd482..7415961a43f 100644 --- a/core/org.eclipse.cdt.core.native/native_src/win/iostream.c +++ b/core/org.eclipse.cdt.core.native/native_src/win/iostream.c @@ -30,19 +30,19 @@ void ThrowByName(JNIEnv *env, const char *name, const char *msg); #define BUFF_SIZE (1024) static HANDLE channelToHandle(JNIEnv *env, jobject channel) { - if (channel == 0) { + if (!channel) { ThrowByName(env, "java/io/IOException", "Invalid channel object"); return NULL; } jclass cls = (*env)->GetObjectClass(env, channel); - if (cls == NULL) { + if (!cls) { ThrowByName(env, "java/io/IOException", "Unable to get channel class"); return NULL; } jfieldID fid = (*env)->GetFieldID(env, cls, "handle", "J"); - if (fid == NULL) { + if (!fid) { ThrowByName(env, "java/io/IOException", "Unable to find handle"); return NULL; } @@ -69,7 +69,7 @@ extern "C" TRUE, // initial state = signaled NULL); // unnamed event object - if (NULL == overlapped.hEvent) { + if (!overlapped.hEvent) { char *lpMsgBuf; FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language diff --git a/core/org.eclipse.cdt.core.native/native_src/win/pty.cpp b/core/org.eclipse.cdt.core.native/native_src/win/pty.cpp index 8824458e90b..a974f68bb38 100644 --- a/core/org.eclipse.cdt.core.native/native_src/win/pty.cpp +++ b/core/org.eclipse.cdt.core.native/native_src/win/pty.cpp @@ -39,7 +39,7 @@ JNIEXPORT jstring JNICALL Java_org_eclipse_cdt_utils_pty_PTY_openMaster(JNIEnv * /* Open new winpty handle */ winpty_t *winpty = winpty_open(80, 40); - if (winpty == NULL) { + if (!winpty) { return NULL; } @@ -67,7 +67,7 @@ JNIEXPORT jstring JNICALL Java_org_eclipse_cdt_utils_pty_PTY_openMaster(JNIEnv * /* Set the master fd. */ fid = env->GetFieldID(cls, "master", "I"); - if (fid == NULL) { + if (!fid) { return NULL; } env->SetIntField(jobj, fid, (jint)master); @@ -87,7 +87,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTY_change_1window_1size(J fd2pty_Iter = fd2pty.find(fd); if (fd2pty_Iter != fd2pty.end()) { winpty_t *winpty = fd2pty_Iter->second; - if (winpty != NULL) { + if (winpty) { return winpty_set_size(winpty, width, height); } } @@ -106,7 +106,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTYInputStream_read0(JNIEn fd2pty_Iter = fd2pty.find(fd); if (fd2pty_Iter != fd2pty.end()) { winpty_t *winpty = fd2pty_Iter->second; - if (winpty != NULL) { + if (winpty) { /* Get the pipe handle */ HANDLE handle = winpty_get_data_pipe(winpty); @@ -159,7 +159,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTYInputStream_close0(JNIE if (fd2pty_Iter != fd2pty.end()) { winpty_t *winpty = fd2pty_Iter->second; fd2pty.erase(fd2pty_Iter); - if (winpty != NULL) { + if (winpty) { winpty_close(winpty); winpty = NULL; } @@ -179,7 +179,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTYOutputStream_write0(JNI fd2pty_Iter = fd2pty.find(fd); if (fd2pty_Iter != fd2pty.end()) { winpty_t *winpty = fd2pty_Iter->second; - if (winpty != NULL) { + if (winpty) { /* Get the pipe handle */ HANDLE handle = winpty_get_data_pipe(winpty); @@ -218,7 +218,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTYOutputStream_close0(JNI if (fd2pty_Iter != fd2pty.end()) { winpty_t *winpty = fd2pty_Iter->second; fd2pty.erase(fd2pty_Iter); - if (winpty != NULL) { + if (winpty) { winpty_close(winpty); winpty = NULL; } @@ -253,7 +253,7 @@ static std::wstring argvToCommandLine(const std::vector &argv) { result.push_back(L' '); } const wchar_t *arg = argv[argIndex].c_str(); - const bool quote = wcschr(arg, L' ') != NULL || wcschr(arg, L'\t') != NULL || *arg == L'\0'; + const bool quote = wcschr(arg, L' ') || wcschr(arg, L'\t') || *arg == L'\0'; if (quote) { result.push_back(L'\"'); } @@ -292,11 +292,10 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTY_exec2(JNIEnv *env, job int pid = -1; - int i; jint argc = env->GetArrayLength(jcmd); jint envc = env->GetArrayLength(jenv); - if (jchannels == NULL || env->GetArrayLength(jchannels) != 3) { + if (!jchannels || env->GetArrayLength(jchannels) != 3) { goto bail_out; } @@ -304,10 +303,10 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTY_exec2(JNIEnv *env, job fd2pty_Iter = fd2pty.find(fd); if (fd2pty_Iter != fd2pty.end()) { winpty_t *winpty = fd2pty_Iter->second; - if (winpty != NULL) { + if (winpty) { std::vector argVector; - for (i = 0; i < argc; i++) { + for (int i = 0; i < argc; i++) { jstring j_str = (jstring)env->GetObjectArrayElement(jcmd, i); const wchar_t *w_str = (const wchar_t *)env->GetStringChars(j_str, NULL); if (i == 0) { @@ -321,7 +320,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTY_exec2(JNIEnv *env, job std::wstring envp; - for (i = 0; i < envc; i++) { + for (int i = 0; i < envc; i++) { jstring j_str = (jstring)env->GetObjectArrayElement(jenv, i); const wchar_t *w_str = (const wchar_t *)env->GetStringChars(j_str, NULL); envp.append(w_str); @@ -361,7 +360,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTY_waitFor(JNIEnv *env, j fd2pty_Iter = fd2pty.find(fd); if (fd2pty_Iter != fd2pty.end()) { winpty_t *winpty = fd2pty_Iter->second; - if (winpty != NULL) { + if (winpty) { HANDLE handle = winpty_get_data_pipe(winpty); BOOL success; do { diff --git a/core/org.eclipse.cdt.core.native/native_src/win/raise.c b/core/org.eclipse.cdt.core.native/native_src/win/raise.c index 7efd2c6d331..dc55814169d 100644 --- a/core/org.eclipse.cdt.core.native/native_src/win/raise.c +++ b/core/org.eclipse.cdt.core.native/native_src/win/raise.c @@ -74,7 +74,7 @@ typedef BOOL(WINAPI *DebugBreakProcessFunc)(HANDLE); int interruptProcess(int pid) { // See if DebugBreakProcess is available (XP and beyond) HMODULE hmod = LoadLibrary(L"Kernel32.dll"); - if (hmod != NULL) { + if (hmod) { BOOL success = FALSE; FARPROC procaddr = GetProcAddress(hmod, "DebugBreakProcess"); if (procaddr != NULL) { @@ -103,7 +103,7 @@ int interruptProcess(int pid) { // Find console EnumWindows(find_child_console, (LPARAM)pid); - if (NULL != consoleHWND) { // Yes, we found out it + if (consoleHWND) { // Yes, we found out it // We are going to switch focus to console, // send Ctrl-C and then restore focus BYTE control_scan_code = (BYTE)MapVirtualKey(VK_CONTROL, 0); diff --git a/core/org.eclipse.cdt.core.native/native_src/win/spawner.c b/core/org.eclipse.cdt.core.native/native_src/win/spawner.c index 81fc68b6756..adf5ccc3e24 100644 --- a/core/org.eclipse.cdt.core.native/native_src/win/spawner.c +++ b/core/org.eclipse.cdt.core.native/native_src/win/spawner.c @@ -36,7 +36,7 @@ extern "C" InitializeCriticalSection(&cs); GetModuleFileNameW(hModule, path, MAX_PATH); p = wcsrchr(path, _T('\\')); - if (NULL != p) { + if (p) { *(p + 1) = _T('\0'); } else { wcscat(path, L"\\"); diff --git a/core/org.eclipse.cdt.core.native/native_src/win/starter.c b/core/org.eclipse.cdt.core.native/native_src/win/starter.c index d6b7384a463..85a9748813d 100644 --- a/core/org.eclipse.cdt.core.native/native_src/win/starter.c +++ b/core/org.eclipse.cdt.core.native/native_src/win/starter.c @@ -66,7 +66,7 @@ bool _isCygwin = true; bool isCygwin(HANDLE process) { // Have we checked before? - if (cygwinBin != NULL || !_isCygwin) { + if (cygwinBin || !_isCygwin) { return _isCygwin; } @@ -128,10 +128,10 @@ void ensureSize(wchar_t **ptr, int *psize, int requiredLength) { size = requiredLength; } *ptr = (wchar_t *)realloc(*ptr, size * sizeof(wchar_t)); - if (NULL == *ptr) { - *psize = 0; - } else { + if (*ptr) { *psize = size; + } else { + *psize = 0; } } } @@ -164,7 +164,7 @@ int main() { return 0; } ensureSize(&szCmdLine, &nCmdLineLength, requiredSize); - if (NULL == szCmdLine) { + if (!szCmdLine) { if (isTraceEnabled(CDT_TRACE_MONITOR)) { cdtTrace(L"Not enough memory to build cmd line!\n"); } @@ -255,10 +255,7 @@ int main() { if (isTraceEnabled(CDT_TRACE_MONITOR_DETAILS)) { wchar_t *lpvEnv = GetEnvironmentStringsW(); - // If the returned pointer is NULL, exit. - if (lpvEnv == NULL) { - cdtTrace(L"Cannot Read Environment\n"); - } else { + if (lpvEnv) { // Variable strings are separated by NULL byte, and the block is // terminated by a NULL byte. @@ -268,6 +265,9 @@ int main() { } FreeEnvironmentStringsW(lpvEnv); + } else { + // If the returned pointer is NULL, exit. + cdtTrace(L"Cannot Read Environment\n"); } } if (isTraceEnabled(CDT_TRACE_MONITOR)) { @@ -275,7 +275,7 @@ int main() { } // Create job object HANDLE hJob = CreateJobObject(NULL, NULL); - if (hJob != NULL) { + if (hJob) { // Configure job to // - terminate all associated processes when the last handle to it is closed // - allow child processes to break away from the job. @@ -315,7 +315,7 @@ int main() { CloseHandle(pi.hThread); h[1] = pi.hProcess; - if (NULL != hJob) { + if (hJob) { if (!AssignProcessToJobObject(hJob, pi.hProcess)) { if (isTraceEnabled(CDT_TRACE_MONITOR)) { cdtTrace(L"Cannot assign process %i to a job\n", pi.dwProcessId); @@ -383,7 +383,7 @@ int main() { SetEvent(waitEvent); - if (NULL != hJob) { + if (hJob) { if (!TerminateJobObject(hJob, (DWORD)-1)) { if (isTraceEnabled(CDT_TRACE_MONITOR)) { cdtTrace(L"Cannot terminate job\n"); @@ -433,14 +433,11 @@ int main() { // Return :number of bytes used in target, or -1 in case of error ///////////////////////////////////////////////////////////////////////////////////// int copyTo(wchar_t *target, const wchar_t *source, int cpyLength, int availSpace) { - BOOL bSlash = FALSE; + bool bSlash = false; int i = 0, j = 0; -#define QUOTATION_DO 0 -#define QUOTATION_DONE 1 -#define QUOTATION_NONE 2 + enum { QUOTATION_DO, QUOTATION_DONE, QUOTATION_NONE } nQuotationMode = QUOTATION_DO; - int nQuotationMode = 0; if (availSpace <= cpyLength) { // = to reserve space for '\0' return -1; } @@ -448,19 +445,19 @@ int copyTo(wchar_t *target, const wchar_t *source, int cpyLength, int availSpace if ((_T('\"') == *source) && (_T('\"') == *(source + cpyLength - 1))) { // Already done nQuotationMode = QUOTATION_DONE; - } else if (wcschr(source, _T(' ')) == NULL) { - // No reason to quotate term becase it doesn't have embedded spaces - nQuotationMode = QUOTATION_NONE; - } else { + } else if (wcschr(source, _T(' '))) { // Needs to be quotated nQuotationMode = QUOTATION_DO; *target = _T('\"'); ++j; + } else { + // No reason to quotate term because it doesn't have embedded spaces + nQuotationMode = QUOTATION_NONE; } for (; i < cpyLength; ++i, ++j) { if (source[i] == _T('\\')) { - bSlash = TRUE; + bSlash = true; } else { // Don't escape embracing quotation marks if ((source[i] == _T('\"')) && @@ -472,9 +469,9 @@ int copyTo(wchar_t *target, const wchar_t *source, int cpyLength, int availSpace target[j] = _T('\\'); ++j; } - bSlash = FALSE; + bSlash = false; } else { - bSlash = FALSE; + bSlash = false; } } diff --git a/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/pty.dll b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/pty.dll index b74a2eba759f7e40fb91c3146e4413abed205cc0..5751bb16ad0ad37e750e7b3d4d6ce19fe4b029a9 100755 GIT binary patch delta 74670 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 Sva5>JS5&r3&Y4XV8(Mra$W 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 diff --git a/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/starter.exe b/core/org.eclipse.cdt.core.win32.x86_64/os/win32/x86_64/starter.exe index 700d95a4062fd954cda9d2cf41a02a381d6d086c..d86256e27d186a9ede8e403e5bb8e28fc88781f5 100755 GIT binary patch delta 9003 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 UhYcsqDM8BEa^`Hsp;zet1LBlARR910