fix(main.c): read from stdin properly
This commit is contained in:
@@ -11,6 +11,21 @@ int main(int argc, char **argv) {
|
|||||||
const char *line = *argv++;
|
const char *line = *argv++;
|
||||||
Nob_String_View view = nob_sv_from_cstr(line);
|
Nob_String_View view = nob_sv_from_cstr(line);
|
||||||
|
|
||||||
|
if (nob_sv_eq(view, (Nob_String_View){.count = 1, .data = "-"})) {
|
||||||
|
printf("Reading from stdin\n");
|
||||||
|
|
||||||
|
Nob_String_Builder sb = {0};
|
||||||
|
char content[1];
|
||||||
|
while (read(stdin->_fileno, content, sizeof(*content)) == 1) {
|
||||||
|
if (*content == '\0')
|
||||||
|
break;
|
||||||
|
|
||||||
|
nob_sb_appendf(&sb, "%c", *content);
|
||||||
|
}
|
||||||
|
|
||||||
|
view = nob_sb_to_sv(sb);
|
||||||
|
}
|
||||||
|
|
||||||
Tokens tokens = {0};
|
Tokens tokens = {0};
|
||||||
tokenize(view, &tokens);
|
tokenize(view, &tokens);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user