File tree 2 files changed +17
-3
lines changed
2 files changed +17
-3
lines changed Original file line number Diff line number Diff line change 157
157
else Trap_Arg (src_val );
158
158
}
159
159
else if (IS_CHAR (src_val )) {
160
- src_ser = BUF_FORM ;
161
- RESET_TAIL (src_ser );
162
- src_ser = Append_Byte (src_ser , VAL_CHAR (src_val )); // unicode ok too
160
+ if (VAL_CHAR (src_val ) < 256 ) {
161
+ src_ser = BUF_FORM ;
162
+ * SERIES_DATA (src_ser ) = (REBYTE )VAL_CHAR (src_val );
163
+ }
164
+ else {
165
+ src_ser = BUF_UTF8 ;
166
+ * (REBUNI * )SERIES_DATA (src_ser ) = (REBUNI )VAL_CHAR (src_val );
167
+ }
168
+ SERIES_TAIL (src_ser ) = 1 ;
163
169
}
164
170
else if (IS_BLOCK (src_val )) {
165
171
src_ser = Form_Tight_Block (src_val );
Original file line number Diff line number Diff line change @@ -179,6 +179,14 @@ Rebol [
179
179
180
180
===end-group===
181
181
182
+
183
+ ===start-group=== "APPEND string!"
184
+ --test-- "APPEND string! char!"
185
+ --assert "a" = append "" #"a"
186
+ --assert "←" = append "" #"^(2190)" ; wide char
187
+ ===end-group===
188
+
189
+
182
190
;@@ https://github.com/Oldes/Rebol-issues/issues/1791
183
191
===start-group=== "APPEND binary!"
184
192
--test-- "APPEND binary! binary!"
You can’t perform that action at this time.
0 commit comments