void uim_helper_read_proc(int fd) { int rc; while (uim_helper_fd_readable(fd) > 0) { rc = read(fd, uim_recv_buf, sizeof(uim_recv_buf)); if (rc == 0 || (rc == -1 && errno != EAGAIN)) { uim_helper_close_client_fd(fd); return; } else if (rc > 0) { uim_read_buf = uim_helper_buffer_append(uim_read_buf, uim_recv_buf, rc); } } }
KUimCharDict::~KUimCharDict() { writeConfig(); uim_helper_close_client_fd( uim_fd ); }
QUimHelperManager::~QUimHelperManager() { if ( im_uim_fd != -1 ) uim_helper_close_client_fd( im_uim_fd ); }