From 2e52bb6444dcf169708232a4f2e1211d37c6b327 Mon Sep 17 00:00:00 2001 From: Sebastien Vincent Date: Fri, 21 May 2010 09:20:27 +0000 Subject: [PATCH] Fix memory leak in Windows's jawtrenderer. --- lib/native/windows-64/jawtrenderer.dll | Bin 65024 -> 65024 bytes lib/native/windows/jawtrenderer.dll | Bin 64000 -> 64000 bytes .../jawtrenderer/JAWTRenderer_Windows.cpp | 5 +++++ .../jawtrenderer/windows/d3d_device.cpp | 12 ++++++------ 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/lib/native/windows-64/jawtrenderer.dll b/lib/native/windows-64/jawtrenderer.dll index 3ed9fba3a2b751178d425bc30c3b677113a61a66..79f2f7abe550e067345d2f397e72ad0ea162d9c6 100755 GIT binary patch delta 8476 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 delta 8479 zcmb_hdsvj!*57+zU_i$~WVi})85A$%a1(GqMF)9RI-+8!sZid_3+bR{7AONcy-w=c zopZ9howU?4vqnqPauO011T-s6O)JasK}*d#n%evQ*1XU;o%8R<^DKUAueJ8tYwxx9 z+WUpd`#zQTeRc=&xPOlNWdv*cxxwONJ7@wJ+X}%s!YO|h9~N>i4aO5r42k~yh_7%hZ zvnsyQk{6rFEXhkvS-ZJZRTukMZDZTd!|3z)7^&)7tmIf~G7pm%2Mv?YPzZ>n*)zx6 zx!JQfkesNoc@?KMYHaJhiYW4Jma5NDuLe)1w^xIw0?Llw@qShZ6i<(j6pM5Q{;^o0 z>#M2Jh<&j^`G(E|JQ|om)r?!ZZnp*kCPi`^Z~fb zv%Aat=5=sOPUFE#B-M|Fi9b$y7 z)z-)U-qs7#rtyRc|Fm~KO$C#q$WrG%-Gep7$)%`ma*33 z)u+m{Wvv#{YPaFVC2*k}b!dON#aOoSDe+@SK}`KcbeCHcIpcm`iw334e*7QehwiQXE!U|Y_c*^OntCQ@%z6PEI_;RGB$g0|t*sH%X(Si_(-q*h8zdhS^w)X z{Jx_Yrwc>x_?QN?yji}rl9=`^-^QU+j9-Y6y~8vy4l%R$etu5G_etgB#MnLq1CO3& z%od3Zm57af^5Ua0KZ?MFDpGDxjMXb>Ab&`aUs~usf+w5(AA{JT{ZwQn$Hi=^ZyWb` z4Q&ToOxh_r+l}{W++AW(^2mq*Uoo~YR&G{|b+EBIH+gW{td{8R;$rd>5w&NbjVJA} zKWX0*6CRoqk*jK(6k}~Q_1)OkH&I-AsDNJ(NqrN#uElaF#u3m{-HO1$o(Bo4uVNe^ zX7uf@=~gXP_kAVh7Q$xoSz9=&!4>eH_;hc`I=KN$M1rU9Dhj$sA`sZz6BEo)x@Pk0 z%xw|RnWGYXJaA#_2IX&8V81ub>%fqo=1x17=Pc4F#&5*|^Wgl+UoyrG_WQ7|*AAx! zIP1#9fncl88LFGn#Fm^%PA=ZTpxC?)D^+i|!H%O(${}KK%A-L){{WLGy(VWMJTG>n zWJayGdjoU=JO>|mV_v66FT=zqiP(M*1?9snE7yAZ#gLEa6=HI~Jbm>^G>}<0B-vtT zzgbbuEu?Pnd~gwSuSz_GCX=dqV6BGdJ5?81(Eb^Z_C)Xe zw9CWf^Lb92Nt0)3EKgO8Tb5AYGs7%(wvP2$4jamPYn)>I$^@o zZw?p3a{@)z9KG(lm%Y;SA|)p?VCP~q99sPe@pMjH!V)sGv79zImnRat2CNk;n|4ky+7|qqF9lE5S?$Ua z(KM(}%yPIH_OH(h9nqEG$j2bMjY?`83!VCDB0O&_U*wvbH-YQxjzI6g3jn8nx9ju4 zgLuGHksek{k`8|8Cf~}_swNg^tI50U2heET6g!@V8 zG)}MgdRD~f{8WBaROgT9L&e4XNIbEA%g@$C%o7(v)ELm7>BsxA8zFQSMk$dQnL@dgI!{!XKL3QRX$32CyqWDP3u`xkGad*wXl>NEB0Xl(W(*?Miz$UA403@-tXm!_1b>m>4Yi9ed42$-J(1G z(XN?>eRR6&-u-gC;jO0FdhHEycVvG)Or#g}Mwu!t$`Ac=Dr1&fgB>LpYgBCVUQlm} z14WwyWd1ffppCXpo;9_KLNzb3MEqq;G+!)ckBN+3asc~yh|Zxc z_c9$F+A?CkbigB$y-2(Zx;9EL&R6br}z!=_SlCso!=A} z#%|{`M9m{x`C-xf(P~~O-hDJhquDMlKbnFkbm+JgeqBi8@_AqJ;G2tEw+Wo~cnjuq3!_vCMg)#J-M`R}C#n{u`sUm4oouHXrmxF*6S zZa-$`<6MaoeK;?6^_-OLqlx^dm|EJ*hq=-pui@c`-(bvHq{D+vG1iQN2b_lFs@$)| zsVC<3v_PqrnCf$q!FtB~tSh9NHET3X)tBA8Y;A#fa>`J?O1wKI9Jkx?DVzCw;;E@+ z$+NJ6IN_*H4*fLZ9s21i%urz_fWCgP{9}b~+FIR#9po2}%YRM_F}1=&l%ZM|jnqYPYwN{8&OwQm^u=W7^cy zRrNc6sLQ=-Ww_eA0O~?~j5@S)Ag60M4rOVUYONU0w3)@avuQ7D^I+6UJ0pvjPGI_i zDU_ql)Eke1DTS7cw#jraX=q?sANGbYJXt(&$LpkTwxxPrJp?(%Nm5#Hn-UiTv$bvd zV9&E{dL3PAUK3eA#r4{gySQP^s~9vz)~*CP^vgxb?2(41m*6<EcmHHHFlajwjli>Kxd<|D)EFb+;9u~Mh#16mGv)+b@SuXu0KNK)YDtI-w>)!Hk~846dzTs{S@QWJW}dM zp{WMZWOd+;_~ZQHe5c4>u$Ri~f>3dQIXdGHR{XGk+7U^a!0~(SM*y zN>vGN0sY&ea#2#nDpj7S%3~p4u1dP7k|anLs}inCP^x-BQ4enNuRM8@7%K-A%R-aFJU;7@}r5JPLW@*|?PrYnD2=vEYQlWY76mv3mL_nGu#sioCm zU*f~qb9%{{(cp?-mFmlr#Mm{z@w1|6ZP$=JNO5attL12UZocJoc^2-Eb)s@@CLb^M ztsR41)bX$5_)6EbzYY&DB$v|}_mA`*uJDE8<5!3BGeWz*cg0p{B&Xf95>uC|+&Y}f z6cWkW7YH2Md-Q6O?WQ$k;LzU3)?`+997IGhXWz;Tb#cgalf4{%=+U#1v? zBk21t2mSVwp(pi%qNE*DjJLvJVs`4Q`cZ5b(5lJ}g%v9gR1E`Rs2C4I@ga@nEnaVk zi|a$NYQL`U9=vHfV;WnDwA)4`a6wc3=J2R8xpWyTQ|hxGpBw- zKK_)T-)PZv4HLsRM)L<^=Ekj92>qtX{24KOQ-A)5*tW@{i8PAKn+D)pBVqG=B>nH3 zxA>Yrn}x^%P+@za9JFfEj(JAmYQ>h!s#OyG3>ZK0sQ35qAmR&MvtAG5{;O~!DaIzT z;*FhQXQ4p<<)ySV+Ghb*pDe>)xxUeS@!s}98hw_DRniKTl>#A6b5*`s#^YX&QN{Zb zRO}k7qIGy1iq1R30vg-2`$Wpl9-8|Jt_eH+qQ}131!LhWG)}8wTALr+jCQ+>`)Qb8 zs>U40G>p}SFlJm# z%P~vE?yiho1FgqbS{(Cb>@*Tn9LD}EXaCctKK-H@TS@(BT=e@N*?;-rLH;Z#J%R=C zU>4x^FY_y9;+^9G!hJj>Z!@YiE$iPfsfqCz56|3EVCRTH7GVQT4PX)JIu?;?yws(o zv%B4XqlvMSMEvzdL^pI5c@4dJshHC+Vp8do=nsDp(SEGcEq}MR%(v91NMj~>8RQ(_ ziM~&?;c|=<=*t4r{a9eCUm5w34LR?xOS_^EMyPVZZ!$~ zOCTm5ZhW+Jdz|NT7`vQ{c*Neu9>#X*`2jd;AeuS8$r~&FuwRb{#Z{0+EITnIx!t~7 zF=h)Yeh(e+6Jhda!Bh9J;B*%Y=DS%3Os!PhJkjNk9=9eiHsUeNxxGg>9dZ!Fg64N@ z33Thq{7e0cN<~Ujx0LoV9>+T%s`TGII=Ah>c75v<#EZh=5X+hdVzobM>W1InG$rJ> z?bV_HTHC>lwf87MR7*g+5d-0W>(@cH0Ys~?LF6?jWVH93Js$@Xbh0gaZ%<^cU0;d1 zwiM=KRJS*7Hd!T;32O4C!h8A!T&5=nPCCb zh*GN1m|3o?=QF!-UlDgBv!cBe5Z(mM{6<9`s=+w$LBP!*`wuEU0KXLS|11quGV((i z+YUM5WYEjt3Acgl;0brO$#(<41Hn%PW2hkAK_TBUwQ{so6sjzp!m+Q>nJ@x$8hkA9 z4U!|E-N1)%x4d)(eSyUw3a%7*8l?Lc_PFt0M?DDw|DSb7ttS|tiVPK-UqCkSgbzSd z!4r0lfn)H5vp_lE3ClqAS1rOtAhJQBW+y?umk|K)7Z3$>2e`Hy0)UMv76Hb!1zG`S zaXda|pdj1}qM7Xj{sN-P9g=_Us%nlTRe+rSS}F? z4)~?O&7h-X1N;I+v%CY0?x)Ts7I+HO0-Mvoaha+O;Zh=63E;a~*azsl2Y3s#^c&>= zHkk5k)o3yBGRO)e!WsSH4E#*s^)~(nFxsNp#{$Q<@e_gb+xS($L!dJBbp!8$ylDcy zg@*Zd@_Wn< zc(?!vz7BXF&*N?a{>LE~WK9?6(rk(x>!FnKg`54jn*U^Mbioo#6R4q62T8-rIM zhz4E{v=<{V$O(^vXf`?H7;6HNO$*R90jB{rdw^w+;no9B$R?^AmT=Kz{9E$}3=S+S z#q7bCl_LKyqd`Fs20wu%g`#*0@&uxE>;%S5#cUw&0~|FCPRIs$7Gwv19ynpTI@m;D z;|%zNobWb?{1g5<6aRjO{0{Ipye79+pm85e32p}(jBbhNK-8fUIQ}Wd&cJ3OFm*PL z4ES{5ZBQNfthtO`0g;UdcwnA7fk9 z1=+yw0rs`2WwjJ&2W^ME4!Cb2W(l4!Z;_gBD==cQ%6A3M2GP+a-0>Vz1pA%9!Ovsn z;H|)2l_<|1}A*x9^@6+y$YKQd=ij8%cuepYVE4rUCr3B8petsZv=K;p)Pv} zFwBV+gghJ=B~-pE(6}BGBRQ~Q8&U(l5_o(&@_&#VZD(xG4$KhzQeZQv5qt}9>`vqt zd@1nxU5NTBIs-L$xS7EF0@Fb><5J)*5dNg@ePlL*zl{_S(i4t&!nd!Idf z=KHd4`e)tr&u{g=sNO2L)0-=@dva&E5xy2K!=Kw@rv?u8>*i+{1oq@^+Pea+(DD8V zWtV4!d7lpUjtLmwIK#dZIBr0C078=+M|VbO)zN_CNx=vn?}~t&_KXPc*NtoaoY6#k zaZq@VQW$wNDZrgmo*_({;H_-Tu-^+B#PzZ(f+A99PWG+{{(aI}a5TBGB; z@xUyQD+EW&2F=}Jk_%eJAm?2kXk&ayJvR5`s_aV%Iou&%+K}abeqDz9ni9X_xK!V# z{Q3~C+&6~)*pHiN^C^+N=gvc}_PEuv(vT}3+D7Q+XM)%PRNAvs;=yiB%79@L9fSUL zZw2LcT6K)8X!2WioLkivyd?L=&i1%>oYB=I(I{vzzyt9>Umy~20l{hZt&|aAj-|KV zakl`-1oG^0(`M_<^PTs%&p`}@pu%F_<7JR|w5ly&N!L{k{t1=saXB}^9xNQ=`~VQ~ zz*xIwT3@c&?%^H`(r^oL&M+*n1Dax>1ULvB1!{nL;Idud9vODuDOv#00g=EE-!=E% zPF%UYWlj^9;>(@;hQFV@)D}`A`i#iz@I8F#{Y+ItH$NFfHc*slr=|>YEZSM^{I zxpIv2FM%Em3UAjv-`DTtGCRy2?=;NK$2kVDL^d>ez&c8hFMRhJuLg>IN2sP{~h>hYZ?T4x! z4*3lha3=J%g{m;_CHuLm=)j!5$hF>HSrx;@+FL=+vnxQ>fQ$|t0KOl!x$2m1Jrv}+ z*WTXl%#O8(R!0x6SO4>-;lK3C->v?z9%C=Ajt&gBkSoeAsE*-2w)cVTVb_7Ab_>X8 zJM=^h*JKMIpRvb*JYg>e$=d}dq5~5$kjt|7fwmm9m3AGByll5XzthXe)yEF4i4Kg| zk6e;ZsF8x4+t)Ye6c-@47r{00e*ocjJgL6-zIovR&lGK*w#D!nHizKcp5ZR30HeBNxe~@?|+n>7tgaEoz(EUF)fRM;@V>^pu5ogr>t~zM2!1WxA58yr%qBDOaePqRvs@S3gv5sQy}r_K+5> zC1`?{q)pV^TB^2EdtFkM@anNc%#o)=q0bXqU7m?HBEa)~4Ol0&ob9 z#EF<-(}PFiG58rg4bR6*u?OejV!R*MVvcks;p9p3G?_s*k{x6(sV5gmXF7l;P?_p9 zg&w3w=^1*FUZ%Gxrw8j{dM{nnnLb&csn6G6(ew3_`USm{(bb4BdKuI>W}G(88_h;2 zi(n&RbBkCbyUsjOu%8*`4)YT;*y?VH)>vzawcN_Hj#{-AdIUBOQrw3h%uD=m{wdy1 z3=^ZpSaF~@MBE^5futW6zY#BrzlgWQp^)Uar3&d=Nbb+l1M-8gg-^;;}8h4RL>w7N_CNgIfV;299=K70^2;3nLR+c1GpQ;8RX zJVL%B*GMRYcbA6guN&_gb;kEbqjAel~ly2$e&F_^x~mFYu%JiTqUl1wM~2;`i~N^5y)Od_8}MkAq{CEc6y17uSm4!&bZ~ zeJ5R){AEjCC}+vzm8r@+C0p?-+m$GFpqiq2H3@en7V#t#H2!LG*3ql<25p6JL3*q{N?)#L>$!R!6x%v|gT6^G)UW8x z`c1u6zpGcX3Fa9Kr6c5m8j|=C{2G28U&#N;#|zVi6GENPPmK47qs2wycJU*zRJG2*p4?TLpd>4sm2JvL${wXuDN_ckqKefo)H=06 zZBp;4iP{w{24igD$MI-97Ei>>@pfE+D{&1ziR*#w5>6yC!Nees5YGo>AE_ay z$ysuqG!PDsR|=g)=h6iPiRxMg<6)jR@(tr$_!jjs_7}3qt7uA z3xadJhkeebnJ=1=PQBzKG#Z-jd^lgl?-GWKPl#8=>!P2utz*@ffy{(ke<>W0e=<~v;C~WAOO#Ay1r*I&Q19<5Ta=wjvEqZIS146VopMh3 zyYjPgLupg|)vjuU+Fy-_tzhafb)@Q6Q`K&yl$O(<=!bfVUZV>JgM57r*}B18rUAje oWY>XdH(0)5|DHUIzs delta 3123 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 diff --git a/src/native/jawtrenderer/JAWTRenderer_Windows.cpp b/src/native/jawtrenderer/JAWTRenderer_Windows.cpp index 3b3633dca..68fd81c6b 100644 --- a/src/native/jawtrenderer/JAWTRenderer_Windows.cpp +++ b/src/native/jawtrenderer/JAWTRenderer_Windows.cpp @@ -36,17 +36,22 @@ void JAWTRenderer_close if(blitter->surface) { delete blitter->surface; + blitter->surface = NULL; } if(blitter->device) { delete blitter->device; + blitter->device = NULL; } if(blitter->d3d) { delete blitter->d3d; + blitter->d3d = NULL; } + + delete blitter; } jlong JAWTRenderer_open(JNIEnv *jniEnv, jclass clazz, jobject component) diff --git a/src/native/jawtrenderer/windows/d3d_device.cpp b/src/native/jawtrenderer/windows/d3d_device.cpp index d22c55ba9..16c7c4225 100644 --- a/src/native/jawtrenderer/windows/d3d_device.cpp +++ b/src/native/jawtrenderer/windows/d3d_device.cpp @@ -70,15 +70,15 @@ D3DDevice::D3DDevice(HWND hwnd, LPDIRECT3D9 d3d, size_t width, size_t height, D3DDevice::~D3DDevice() { - if(m_device) + if(m_backSurface) { - m_device->Release(); - m_device = NULL; + m_backSurface->Release(); } - if(m_backSurface) + if(m_device) { - m_backSurface->Release(); + m_device->Release(); + m_device = NULL; } } @@ -185,7 +185,7 @@ void D3DDevice::render(D3DSurface* surface) /* copy content on surface */ m_device->UpdateSurface(surfacePointer, NULL, m_backSurface, NULL); - /* finish scence and cleanup */ + /* finish scene and cleanup */ m_device->EndScene(); m_backSurface->Release(); m_backSurface = NULL;