Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.

Commit 127cdb6

Browse files
author
Fraser J. Gordon
committed
MCArrayOp::exec_ctxt no longer fails for types other than TYPE_USER
1 parent aad7820 commit 127cdb6

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

engine/src/cmdsm.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1142,6 +1142,7 @@ void MCArrayOp::exec_ctxt(MCExecContext &ctxt)
11421142

11431143
MCAutoStringRef t_element_del;
11441144
MCAutoStringRef t_key_del;
1145+
codepoint_t t_delim_char;
11451146
uint4 chunk;
11461147
chunk = mode;
11471148
switch(chunk)
@@ -1156,6 +1157,25 @@ void MCArrayOp::exec_ctxt(MCExecContext &ctxt)
11561157
return;
11571158
}
11581159
break;
1160+
case TYPE_ROW:
1161+
t_delim_char = ctxt.GetRowDelimiter();
1162+
/* UNCHECKED */ MCStringCreateWithBytes((const byte_t*)&t_delim_char, 4, kMCStringEncodingUTF32, false, &t_element_del);
1163+
break;
1164+
case TYPE_COLUMN:
1165+
t_delim_char = ctxt.GetColumnDelimiter();
1166+
/* UNCHECKED */ MCStringCreateWithBytes((const byte_t*)&t_delim_char, 4, kMCStringEncodingUTF32, false, &t_element_del);
1167+
break;
1168+
case TYPE_LINE:
1169+
t_delim_char = ctxt.GetLineDelimiter();
1170+
/* UNCHECKED */ MCStringCreateWithBytes((const byte_t*)&t_delim_char, 4, kMCStringEncodingUTF32, false, &t_element_del);
1171+
break;
1172+
case TYPE_ITEM:
1173+
t_delim_char = ctxt.GetItemDelimiter();
1174+
/* UNCHECKED */ MCStringCreateWithBytes((const byte_t*)&t_delim_char, 4, kMCStringEncodingUTF32, false, &t_element_del);
1175+
break;
1176+
case TYPE_WORD:
1177+
case TYPE_TOKEN:
1178+
case TYPE_CHARACTER:
11591179
default:
11601180
ctxt . Throw();
11611181
return;

0 commit comments

Comments
 (0)