mirror of
https://github.com/justinethier/cyclone.git
synced 2025-05-23 20:15:05 +02:00
WIP
This commit is contained in:
parent
7f8cc02c50
commit
118822f353
2 changed files with 14 additions and 2 deletions
14
runtime.c
14
runtime.c
|
@ -6001,8 +6001,15 @@ void _read_string(void *data, object cont, port_type *p)
|
|||
}
|
||||
buf[i] = '\0';
|
||||
{
|
||||
int result = (int)strtol(buf, NULL, 16);
|
||||
p->tok_buf[p->tok_end++] = (char)result;
|
||||
char_type result = strtol(buf, NULL, 16);
|
||||
char cbuf[5];
|
||||
int i;
|
||||
Cyc_utf8_encode_char(cbuf, 5, result);
|
||||
// TODO: infinite loop here or above if ; is not provided???
|
||||
for (i = 0; cbuf[i] != 0; i++) {
|
||||
_read_add_to_tok_buf(p, cbuf[i]);
|
||||
}
|
||||
//p->tok_buf[p->tok_end++] = (char)result;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -6014,7 +6021,10 @@ void _read_string(void *data, object cont, port_type *p)
|
|||
p->tok_buf[p->tok_end] = '\0'; // TODO: what if buffer is full?
|
||||
p->tok_end = 0; // Reset for next atom
|
||||
{
|
||||
// TODO: need to change this below, but run into trouble in icyc, eg:
|
||||
// (string-ref "ab\x3bb;" 2) crashes
|
||||
make_string(str, p->tok_buf);
|
||||
//make_utf8_string(data, str, p->tok_buf);
|
||||
return_thread_runnable(data, &str);
|
||||
}
|
||||
} else if (c == '\\') {
|
||||
|
|
2
test.c
2
test.c
|
@ -155,5 +155,7 @@ void main(){
|
|||
encode(0x3bb);
|
||||
encode(65);
|
||||
encode(0xcebb);
|
||||
|
||||
printf("%06X\n", 0x0fff);
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue