break;
case wxHTTP_POST:
request = wxT("POST");
+ if ( GetHeader( wxT("Content-Length") ).IsNull() )
+ SetHeader( wxT("Content-Length"), wxString::Format( wxT("%lu"), (unsigned long)m_post_buf.Len() ) );
break;
default:
return FALSE;
SetHeader(wxT("User-Agent"), wxT("wxWidgets 2.x"));
SaveState();
- SetFlags(wxSOCKET_NONE);
+#if wxUSE_THREADS
+ SetFlags( wxThread::IsMain() ? wxSOCKET_NONE : wxSOCKET_BLOCK );
+#else
+ SetFlags( wxSOCKET_NONE );
+#endif
Notify(FALSE);
wxString buf;
Write("\r\n", 2);
if ( req == wxHTTP_POST ) {
- Write(m_post_buf, m_post_buf.Len());
+ Write(m_post_buf.mbc_str(), m_post_buf.Len());
m_post_buf = wxEmptyString;
}