@@ -2687,17 +2687,15 @@ static void FChown(const FunctionCallbackInfo<Value>& args) {
2687
2687
CHECK (IsSafeJsInt (args[2 ]));
2688
2688
const uv_gid_t gid = static_cast <uv_gid_t >(args[2 ].As <Integer>()->Value ());
2689
2689
2690
- FSReqBase* req_wrap_async = GetReqWrap (args, 3 );
2691
- if ( req_wrap_async != nullptr ) { // fchown(fd, uid, gid, req)
2690
+ if (argc > 3 ) { // fchown(fd, uid, gid, req)
2691
+ FSReqBase* req_wrap_async = GetReqWrap (args, 3 );
2692
2692
FS_ASYNC_TRACE_BEGIN0 (UV_FS_FCHOWN, req_wrap_async)
2693
2693
AsyncCall (env, req_wrap_async, args, " fchown" , UTF8, AfterNoArgs,
2694
2694
uv_fs_fchown, fd, uid, gid);
2695
- } else { // fchown(fd, uid, gid, undefined, ctx)
2696
- CHECK_EQ (argc, 5 );
2697
- FSReqWrapSync req_wrap_sync;
2695
+ } else { // fchown(fd, uid, gid)
2696
+ FSReqWrapSync req_wrap_sync (" fchown" );
2698
2697
FS_SYNC_TRACE_BEGIN (fchown );
2699
- SyncCall (env, args[4 ], &req_wrap_sync, " fchown" ,
2700
- uv_fs_fchown, fd, uid, gid);
2698
+ SyncCallAndThrowOnError (env, &req_wrap_sync, uv_fs_fchown, fd, uid, gid);
2701
2699
FS_SYNC_TRACE_END (fchown );
2702
2700
}
2703
2701
}
0 commit comments