void c_open(char *file) { file += 2; FILE *f = fopen(file, "r"); if (f == NULL) { puts("couldnt open file."); return; } b_truncate(buffer); Row *row = buffer; row->n = NULL; while (1) { size_t red = fread(&row->text, 1, ROW_SIZE, f); if (red < ROW_SIZE) { break; } else { Row *new_row = calloc(1, sizeof(Row)); new_row->p = row; row->n = new_row; row = new_row; } } }