Skip to content

Commit

Permalink
#2673 Rollback for s and av
Browse files Browse the repository at this point in the history
  • Loading branch information
Howard Soh committed Oct 15, 2024
1 parent 52a785b commit ff8914a
Showing 1 changed file with 24 additions and 28 deletions.
52 changes: 24 additions & 28 deletions src/libcode/vx_python3_utils/wchar_argv.cc
Original file line number Diff line number Diff line change
Expand Up @@ -132,49 +132,51 @@ void Wchar_Argv::set(const StringArray & a)

{

int j, k, N;
int len;

int k = 0;
int len = 0;
ConcatString c;
const char *method_name = "Wchar_Argv::set() -> ";


len = 0;

for (j=0; j<(a.n()); ++j) {
for (int j=0; j<(a.n()); ++j) {

len += a.length(j);

}

N = len + a.n();
int N = len + a.n();

vector<char> s(N, 0);
char * s = new char [N];

vector<char *> av(a.n());
char ** av = new char * [a.n()];

memset(s, 0, N);

k = 0;

for (j=0; j<(a.n()); ++j) {
for (int j=0; j<(a.n()); ++j) {

av[j] = s.data() + k;
av[j] = s + k;

c = a[j].c_str();

len = c.length();

m_strncpy(s.data() + k, c.text(), len, method_name);
m_strncpy(s + k, c.text(), len, method_name);

k += (len + 1);

}

set(a.n(), av.data());
set(a.n(), av);

//
// done
//

if ( s ) { delete [] s; s = nullptr; }

if ( av ) { delete [] av; av = nullptr; }

return;

}
Expand All @@ -187,32 +189,26 @@ void Wchar_Argv::set(int _argc, char ** _argv)

{

clear();

int k;
int argv_len = 0;
vector<int> len(_argc, 0);

clear();

Argc = _argc;

vector<int>len(Argc);


//
// total length of the argument string ...
//

int argv_len = 0;
int argv_buf_len = sizeof(_argv)/sizeof(*_argv);

for (int j=0; j<_argc; ++j) {

if (j < argv_buf_len) {
len[j] = m_strlen(_argv[j]); // we're using the len array here because
// we don't want to call m_strlen more than
// once on each argv value

argv_len += len[j];
}
len[j] = m_strlen(_argv[j]); // we're using the len array here because
// we don't want to call m_strlen more than
// once on each argv value

argv_len += len[j];

++argv_len; // ... including the end-of-string sentinels (ie, nul chars);

Expand Down

0 comments on commit ff8914a

Please sign in to comment.