public String readLine() {
	int b;
	byte c;
	StringBuilder sb = new StringBuilder();

	try {
	    while (true) {
		if (count == limit) {
		    fill();
		}
		if (limit == -1)
		    break;

		b = buf[count++];
		if (b == '\r') {
		    if (count == limit) {
			fill();
		    }

		    if (limit == -1) {
			sb.append((char) b);
			break;
		    }

		    c = buf[count++];
		    if (c == '\n') {
			break;
		    }
		    sb.append((char) b);
		    sb.append((char) c);
		} else {
		    sb.append((char) b);
		}
	    }
	} catch (IOException e) {
	    throw new JedisConnectionException(e);
	}
	String reply = sb.toString();
	if (reply.length() == 0) {
	    throw new JedisConnectionException(
		    "It seems like server has closed the connection.");
	}
	return reply;
    }