[cups.bugs] [MOD] STR #2179: busy loop in IPP client code

twaugh.redhat twaugh at redhat.com
Wed Jan 3 05:54:39 PST 2007


DO NOT REPLY TO THIS MESSAGE.  INSTEAD, POST ANY RESPONSES TO THE LINK BELOW.

[STR New]

There is a busy loop condition in cupsDoFileRequest() in cups/request.c,
here:

      while ((state = ippRead(http, response)) != IPP_DATA)
        if (state == IPP_ERROR)
        {
         /*
          * Delete the response...
          */

          DEBUG_puts("IPP read error!");
          ippDelete(response);
          response = NULL;

          _cupsSetError(IPP_SERVICE_UNAVAILABLE, strerror(errno));

          break;
        }

If ippRead() returns IPP_IDLE there is no delay before retrying.  I was
unable to catch the specific reason this kept happening indefinitely, but
it was while sending a job to a 1.1.x server.

Original bug report: rhbz#219330

Link: http://www.cups.org/str.php?L2179
Version: 1.2.7





More information about the cups-devel mailing list