Skip to content
This repository has been archived by the owner on Apr 22, 2023. It is now read-only.

Commit

Permalink
process: don't use strdup()
Browse files Browse the repository at this point in the history
file and cwd can be directly used from Utf8Value.
  • Loading branch information
ssuda authored and bnoordhuis committed Mar 20, 2012
1 parent 415bff2 commit 253ec6a
Showing 1 changed file with 6 additions and 11 deletions.
17 changes: 6 additions & 11 deletions src/process_wrap.cc
Expand Up @@ -107,9 +107,9 @@ class ProcessWrap : public HandleWrap {

// options.file
Local<Value> file_v = js_options->Get(String::New("file"));
if (!file_v.IsEmpty() && file_v->IsString()) {
String::Utf8Value file(file_v->ToString());
options.file = strdup(*file);
String::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
if (file.length() > 0) {
options.file = *file;
}

// options.args
Expand All @@ -128,11 +128,9 @@ class ProcessWrap : public HandleWrap {

// options.cwd
Local<Value> cwd_v = js_options->Get(String::New("cwd"));
if (!cwd_v.IsEmpty() && cwd_v->IsString()) {
String::Utf8Value cwd(cwd_v->ToString());
if (cwd.length() > 0) {
options.cwd = strdup(*cwd);
}
String::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
if (cwd.length() > 0) {
options.cwd = *cwd;
}

// options.env
Expand Down Expand Up @@ -191,9 +189,6 @@ class ProcessWrap : public HandleWrap {
delete [] options.args;
}

free(options.cwd);
free((void*)options.file);

if (options.env) {
for (int i = 0; options.env[i]; i++) free(options.env[i]);
delete [] options.env;
Expand Down

0 comments on commit 253ec6a

Please sign in to comment.