[ejabberd] BOSH / IE7 hanging

Hisham Mardam Bey hisham.mardambey at gmail.com
Tue Aug 7 09:23:02 MSK 2012


> The section above suggests that something can affect the outcome of
> the headers, whether they're HTML_DOCTYPE or XHTML_DOCTYPE, and that
> thing is the "html" atom that we're checking for in Headers. The
> question I have is what gets that "html" into Headers? I

A bit more clarification here.

The next bit of code goes on like this:

    Headers1 = case lists:keysearch("Content-Type", 1, Headers) of
       {value, _} ->
           [{"Content-Length", integer_to_list(size(Data))} |
      Headers];
       _ ->
           [{"Content-Type", "text/html; charset=utf-8"},
      {"Content-Length", integer_to_list(size(Data))} |
      Headers]
         end,

So if there's no Content-Type the code tries to use "text/html". The
main issue is that there's always a value coming form
src/web/http_bind.hrl:

-define(CT_XML, {"Content-Type", "text/xml; charset=utf-8"}).
...
-define(HEADER, [?CT_XML, ?AC_ALLOW_ORIGIN, ?AC_ALLOW_HEADERS]).

Of course if I recompile Ejabberd with slight modifications to those
headers IE7 works.

Are there other options?

Thanks again,

hmb.

-- 
Hisham Mardam-Bey
http://hisham.cc/


More information about the ejabberd mailing list