From 22cd60f835fe0336f06943a0c37a443be630eaf4 Mon Sep 17 00:00:00 2001 From: h30051954 Date: Mon, 4 Mar 2024 10:12:47 +0800 Subject: [PATCH] =?UTF-8?q?fixed=206084dcc=20from=20https://gitee.com/heme?= =?UTF-8?q?nghao1996/filemanagement=5Ffile=5Fapi/pulls/570=20TDD=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: h30051954 --- .../kits/js/src/mod_fs/properties/copy.cpp | 9 +++------ .../test/unittest/napi_test/FsCopyTest.js | 5 ++--- .../test/unittest/napi_test/config.json | 6 +++--- .../unittest/napi_test/openharmony_sx.p7b | Bin 4189 -> 3429 bytes 4 files changed, 8 insertions(+), 12 deletions(-) diff --git a/interfaces/kits/js/src/mod_fs/properties/copy.cpp b/interfaces/kits/js/src/mod_fs/properties/copy.cpp index 7a1297f91..ec504071c 100644 --- a/interfaces/kits/js/src/mod_fs/properties/copy.cpp +++ b/interfaces/kits/js/src/mod_fs/properties/copy.cpp @@ -152,12 +152,7 @@ int Copy::CopyFile(const string &src, const string &dest) } auto srcFdg = CreateUniquePtr(srcFd, true); auto destFdg = CreateUniquePtr(destFd, true); - std::unique_ptr sendFileReq = { - new (nothrow) uv_fs_t, CommonFunc::fs_req_cleanup }; - if (sendFileReq == nullptr) { - HILOGE("Failed to request heap memory."); - return ENOMEM; - } + uv_fs_t sendFileReq; int64_t offset = 0; struct stat srcStat{}; if (fstat(srcFdg->GetFD(), &srcStat) < 0) { @@ -171,6 +166,7 @@ int Copy::CopyFile(const string &src, const string &dest) offset, MAX_SIZE, nullptr); if (ret < 0) { HILOGE("Failed to sendfile by errno : %{public}d", errno); + uv_fs_req_cleanup(&sendFileReq); return errno; } offset += static_cast(ret); @@ -179,6 +175,7 @@ int Copy::CopyFile(const string &src, const string &dest) break; } } + uv_fs_req_cleanup(&sendFileReq); if (size != 0) { HILOGE("The execution of the sendfile task was terminated, remaining file size %{public}" PRIu64, size); return E_IO; diff --git a/interfaces/test/unittest/napi_test/FsCopyTest.js b/interfaces/test/unittest/napi_test/FsCopyTest.js index 996e89626..f9bfb1b42 100644 --- a/interfaces/test/unittest/napi_test/FsCopyTest.js +++ b/interfaces/test/unittest/napi_test/FsCopyTest.js @@ -274,15 +274,14 @@ describe("FsCopyTest", function () { console.info(TAG, "Fs_Copy_Test008 success. "); expect(true).assertTrue(); } + fs.rmdirSync(srcDirPathLocal); + fs.rmdirSync(dstDirPathLocal); done(); }) } catch (err) { console.error("Fs_Copy_Test008 failed with invalid param: " + err.message + ", error code: " + err.code); expect().assertFail(); done(); - } finally { - fs.rmdirSync(srcDirPathLocal); - fs.rmdirSync(dstDirPathLocal); } }); diff --git a/interfaces/test/unittest/napi_test/config.json b/interfaces/test/unittest/napi_test/config.json index 651407b02..bc919eb1d 100644 --- a/interfaces/test/unittest/napi_test/config.json +++ b/interfaces/test/unittest/napi_test/config.json @@ -1,6 +1,6 @@ { "app": { - "bundleName": "com.example.myapplication", + "bundleName": "com.example.fileapitest", "vendor": "example", "version": { "code": 1, @@ -13,7 +13,7 @@ }, "deviceConfig": {}, "module": { - "package": "com.example.myapplication", + "package": "com.example.fileapitest", "name": ".MyApplication", "deviceType": [ "default", @@ -38,7 +38,7 @@ ] } ], - "name": "com.example.myapplication.MainAbility", + "name": "com.example.fileapitest.MainAbility", "icon": "$media:icon", "description": "$string:mainability_description", "label": "MyApplication", diff --git a/interfaces/test/unittest/napi_test/openharmony_sx.p7b b/interfaces/test/unittest/napi_test/openharmony_sx.p7b index 166e7985b623f7bf896e6363761bb1a331c54db7..29cbe04748143a93f2b0cf236e17080d99383b83 100644 GIT binary patch literal 3429 zcmcgvYj6|S8MPj^F-F+LU;_ng#KR6k)?Hb$C8v<=>amjTmAtZKTgKF^q}9WcC0SZ& zEfXFU#laAulqtC35%aKt1W1QRjGKYbq(BJ`41qE&1rkC%DU?DfkkByD?#eFM4E*S1 z2F*yT@7(X+J$JwJojVKS0wN`CMw_nfI{_z^+Zh*_KwMzpayXCxq^G3KYtwN^9-qqr z@nr7PL{4X%f0rNU-<~gwlA*9C;1~OeCQ?``looG%1VkDc)?8J z0D}5^$6_Jm%&(Th0G$NZCb4n zg9E5a)r?kQG9?0IY7E6%RIP9s;xbetu+?1ehrI?PX2NNW%c`!%@p27KRoc<&NEND$ z*=m##(yXb&5IYJ(7LBR}!_7sA&*pWz?M+bB=J&el{nco-+h*1@Vk%7{3vR)PXS48H zgtno+Mr*ApXp_oZIMC2Kx7~m>;xx01Rv2JveG6vRgBliX#c2kMJ;550a?E6*HFScb zS`D`Z>(FW^^QCN%(p~Sj>);l(8LsHxSJ;ebt0P1$-l8?b=6)<-R%?{8I;obygKh`v zi`p7B6&UPIaIW_wZcK#(8C{c@VQ+SO8;zB?9zk5Lf&UnS&;}I@n@knTVyCFef*>u? zGPO_bZ6Q%jyTDzgP#(|bOYfUwcZb_g~MYf`4jZ!lJ)(T^# zMQy7MR|bnok;p^hWaLQg4aMOiyvAy( zLvh+ltJ#{FKqZXpBnXVFnQFR77(*27o*a4_w_*qZYYh>Uis@@0JmRh@aXQLsBXR{^ ztqgb|-Lv{&R*-sO47I8-TwPHiskH>0Rz=7M#Uv`qTuvD)<&{Q@2bZ`c;gBPyl}Fra zg~V*M*F?(Y3aiA9)cZvsYBtDR7PCgdu3|DsBo$3Mdju|vQjv;qV`Vep^eC&~aI@U( z1xCnQ$k3aiN>>j{czr#$AL=M-z5m znC)D`=L^uJL);(F5enxrgG?hgdBUt&C2~T{9YP*E#iR`xnZxEXc@fqxgh8(-;ZGqy zLtsH?JmnuC&iyfnb3X3maXDNrzhp<#5ilZU7~`R*XYqNw(TcW+<0bafK8v*bSSi#x~tT#@

d|XiLXh^{&cPEG|#`{_}F*0F&zVP89EcE@W+De#iRey)+5aRWBQizp3Bqb_ufff zuvLtLk!(T+hw~pkpT|vI3?{PiNPaed^eN){;T^4p^Jjj!|7SOoAAQ>(;FyNijOR%L zPA-(Rd)3~wxGlC_<1ZcJzFWtae;--oLuz-qn>U#q%D& zw~3k3+1A+l<>L{h@Xe`nE0QNK|84hTBesE$@$evoFcG`)o)4zK%M2o;AfJ+OLje)sT|XGR<RW-iyQid@MsHtvuk&qC_IgbH?}(-^xIMaQ<2|sx*|;WlVMoq+QTJ(dY+Ev; zBZARU-++!Lkw<3@W%3fMH^_`2d69Imj@aYV2_~F6Y-N)9g%lyRm+U4x{gh$J+7*>Y*RuR{NR%)f|GugYZ zT`Yv+9GDT=Ears(cwb5x2Ts(%?;f2VF!ss2M;Z@e#{T!l!T}SW1Zl}o26HINKoO8J z$08(^*8$1XQ9dN(=N(Yo7p;F-zPjsL?i$hfSl7{M$;(#F=zQ37Q@r_Lwxu2ne{zy@ z`6$qE^9rVw9j-&PYZtA#Q~uG4<>6|KSdK0WralPB7qLl8lK=n! literal 4189 zcmcgv32;-#8Mb604%^^xLvT<;fP#^=?~wGwQSwenwk27zY%C#Tp7fq&$-1n=Pco1p z4p#^bxyUil#z25fk_pX08YYy6CQVAnK`CUyk%1vll1XS1j?$)S=swv7)6h<)Gl^#2 zX#anA|NVFO`@Y=;-Q`~O(3z{OtFDwO1}l5I%d0_mIj2-8kTOuB9=dpyRUsCulnT(T zK5)IEqNiKEN7b!{NRj;%yS5yodGJ;qY=hT9Rt&t&MF0+L*Ml z4%*$tW?&93>Qu__Hd5ZNl`Jw@fS@Jd6LJhITw71Ef44{TC*qgGk!MvTqoBVOc zV*_@E&DlMyWM^zSXJeuX`jG$dNrI<0>q5?L_Cn5Vgmn4i{aMpuy*VoK;bb

xi&H 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 Xdhz1NGa^siwrTS5cS`)zCLR1Y-~J2{ -- Gitee