+ if (conv_total) {
+ /*
+ * Other pre_select functions might have already been called by
+ * now and decided to do nothing, e.g. because their output
+ * buffer was full or the input buffer was empty. We just
+ * converted something which caused these buffers to change but
+ * we can't make the other tasks reconsider their decision at
+ * this point. So force a minimal timeout for the next select
+ * call to avoid unnecessary delays.
+ */
+ s->timeout.tv_sec = 0;
+ s->timeout.tv_usec = 1;
+ }
+ if (*fc->input_error >= 0)