a comment in the http_response_parser.cpp says that the HTTP/1.1 spec
says that the default charset is ISO-8859-1. That is the charset used in
the response parser if a content-type without charset is returned.

You received this bug notification because you are a member of Zorba
Coders, which is the registrant for Zorba.

  http client throws error with no content-type header in http response

Status in Zorba - The XQuery Processor:

Bug description:
  in modules/com/zorba-xquery/www/modules/http-
  client.xq.src/http_response_parser.cpp the function
  HttpResponseParser::parse() throws an error if the response doesn't
  contain a content-type. In this case theCurrentCharset is "".

  the surprising part is that in the following code
  transcode::is_necessary("") returns true and an icu_streambuf is
  created internally with an empty charset:

  if ( transcode::is_necessary( theCurrentCharset.c_str() ) ) {
      new transcode::stream<std::istream>(
        theCurrentCharset.c_str(), theStreamBuffer

  in the constructor of the icu_streambuf (src/util/icu_streambuf.cpp)
  the following code throws the error:

  external_conv_( no_conv_ ? nullptr : create_conv( charset ) )

  the correct behavior would be if the http-client would not throw an
  error if the content-type header is missing.

To manage notifications about this bug go to:

Mailing list: https://launchpad.net/~zorba-coders
Post to     : zorba-coders@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zorba-coders
More help   : https://help.launchpad.net/ListHelp

Reply via email to