Changeset 7171760 in mainline for uspace/lib/c/generic/io/io.c
- Timestamp:
- 2011-08-18T12:05:00Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- b33ec43
- Parents:
- 866e627
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/io/io.c
r866e627 r7171760 101 101 static LIST_INITIALIZE(files); 102 102 103 void __stdio_init(int filc , fdi_node_t *filv[])103 void __stdio_init(int filc) 104 104 { 105 105 if (filc > 0) { 106 stdin = fopen_ node(filv[0], "r");106 stdin = fopen_handle(0); 107 107 } else { 108 108 stdin = &stdin_null; … … 111 111 112 112 if (filc > 1) { 113 stdout = fopen_ node(filv[1], "w");113 stdout = fopen_handle(1); 114 114 } else { 115 115 stdout = &stdout_klog; … … 118 118 119 119 if (filc > 2) { 120 stderr = fopen_ node(filv[2], "w");120 stderr = fopen_handle(2); 121 121 } else { 122 122 stderr = &stderr_klog; … … 285 285 } 286 286 287 FILE *fopen_node(fdi_node_t *node, const char *mode) 288 { 289 int flags; 290 if (!parse_mode(mode, &flags)) 291 return NULL; 292 287 FILE *fopen_handle(int fd) 288 { 293 289 /* Open file. */ 294 290 FILE *stream = malloc(sizeof(FILE)); … … 298 294 } 299 295 300 stream->fd = open_node(node, flags); 301 if (stream->fd < 0) { 302 /* errno was set by open_node() */ 303 free(stream); 304 return NULL; 305 } 306 296 stream->fd = fd; 307 297 stream->error = false; 308 298 stream->eof = false; … … 780 770 } 781 771 782 int fnode(FILE *stream, fdi_node_t *node) 783 { 784 if (stream->fd >= 0) 785 return fd_node(stream->fd, node); 772 int fhandle(FILE *stream, int *handle) 773 { 774 if (stream->fd >= 0) { 775 *handle = stream->fd; 776 return EOK; 777 } 786 778 787 779 return ENOENT;
Note:
See TracChangeset
for help on using the changeset viewer.