Changeset 171f9a1 in mainline for uspace/srv/console/console.c
- Timestamp:
- 2009-04-03T20:39:33Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade
- Children:
- cb01e1e
- Parents:
- 7a2c479
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/console/console.c
r7a2c479 r171f9a1 49 49 #include <sys/mman.h> 50 50 #include <stdio.h> 51 #include <string.h> 51 52 #include <sysinfo.h> 52 53 #include <event.h> … … 466 467 { 467 468 ipc_callid_t callid; 468 size_t len; 469 size_t i; 470 471 if (!ipc_data_write_receive(&callid, &len)) { 469 size_t size; 470 wchar_t ch; 471 size_t off; 472 473 if (!ipc_data_write_receive(&callid, &size)) { 472 474 ipc_answer_0(callid, EINVAL); 473 475 ipc_answer_0(rid, EINVAL); 474 476 } 475 477 476 if (len > CWRITE_BUF_SIZE) 477 len = CWRITE_BUF_SIZE; 478 479 (void) ipc_data_write_finalize(callid, cwrite_buf, len); 480 481 for (i = 0; i < len; i++) { 482 write_char(consnum, cwrite_buf[i]); 478 if (size > CWRITE_BUF_SIZE) 479 size = CWRITE_BUF_SIZE; 480 481 (void) ipc_data_write_finalize(callid, cwrite_buf, size); 482 483 off = 0; 484 while (off < size) { 485 ch = str_decode(cwrite_buf, &off, size); 486 write_char(consnum, ch); 483 487 } 484 488 485 489 gcons_notify_char(consnum); 486 ipc_answer_1(rid, EOK, len);490 ipc_answer_1(rid, EOK, size); 487 491 } 488 492
Note:
See TracChangeset
for help on using the changeset viewer.