Commit Graph

99 Commits

Author SHA1 Message Date
Vadim Zeitlin
f668749377 Initialize all wxHTTPStream members in ctor.
Don't leave m_httpsize and m_read_bytes uninitialized.

Closes #14993.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-23 11:44:30 +00:00
Vadim Zeitlin
d15e514e84 Use wxSOCKET_WAITALL in wxHTTP to ensure that all data is sent.
POST-ing sufficiently big amounts of data in wxHTTP didn't work because it
couldn't be sent all at once to the server. Use wxSOCKET_WAITALL to ensure
that we do send all of the data.

Closes #14598.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-08-30 20:22:40 +00:00
Vadim Zeitlin
c84ef5b9f7 Fix wxHTTP::SetPostBuffer() compilation in ANSI build.
wxString::mb_str() returns a raw pointer and not wxScopedCharBuffer when
wxUSE_UNICODE==0 so fix the code to do it differently in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-31 13:09:11 +00:00
Vadim Zeitlin
ab9d6a4c8b Add SetPostBuffer(wxMemoryBuffer) and SetPostText() to wxHTTP.
This allows to post binary data or text data in e.g. UTF-8 encoding (which is
by far the most common case) easily.

Deprecate the existing SetPostBuffer(wxString) as it didn't explicitly specify
the encoding to use for the data to be posted.

Closes #13870.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-01-20 12:22:25 +00:00
Dimitri Schoolwerth
6636ef8ddf Use wxString's empty() when checking if the string is (non-)empty throughout wx.
Instead of constructs such as if "( s.length() )" and "if (s.length() > 0)" use "if ( !s.empty() )" instead. Similarly for "if (s.length() == 0)" or "if ( s.IsNull() )", use "if ( s.empty() )".
No code changes intended except for a few instances where a construct like "if ( s.length() && wxFileExists(s) )" was changed to not check the length of the string and let wxFileExists handle such cases.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-22 14:38:36 +00:00
Vadim Zeitlin
658e62e493 Fix posting of binary data using wxHTTP.
Don't use mbc_str() which can fail to convert contents of the string created
using wxString::From8BitData(). Use To8BitData() instead.

This fixes posting of binary data via HTTP using binary content transfer
encoding.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-25 09:42:21 +00:00
Vadim Zeitlin
5276b0a53c Use wxDELETE() and wxDELETEA() when possible.
Use wxDELETE[A]() functions which automatically NULL out their arguments after
deleting them instead of doing it manually.

Closes #9685.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-20 18:18:23 +00:00
Vadim Zeitlin
e97cbf8398 No changes, just add a comment.
There is no need to reproduce wxBase64Encode() in wxHTTP code, should just use
the existing function instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-19 12:36:32 +00:00
Vadim Zeitlin
ccc3a25d87 Remove unnecessary comparison of unsigned variable with 0.
m_httpsize is of type size_t and so is always >= 0, no need to check for it.
And removing the check avoids a warning from at least IRIX mipsPro (and
probably others).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-02-28 11:08:34 +00:00
Vadim Zeitlin
330ca4d434 Fix wxHTTPStream::Eof() to return true for empty HTTP resources.
Eof() never returned true when attempting to read an empty resource before.

Closes #11596.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-24 01:00:03 +00:00
Julian Smart
906cb3f119 Applied modified #10655 (Added Cookie (receive) support to wxHTTP)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-26 19:47:23 +00:00
Vadim Zeitlin
1c7a6772c1 include port number in HTTP Host header (closes #10632)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-25 23:38:03 +00:00
Vadim Zeitlin
c0c133e13b add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Francesco Montorsi
730b772b41 Move SetDefaultTimeout to wxProtocol and set it to 60 seconds for both wxHTTP and wxFTP
Move SetPassword and SetUser implementations to wxProtocol to avoid code redundancy
Make const-correct various getters
Reorganize wxFTP docs
Move wxStringToStringHashMap to hashmap.h and document its existance



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58137 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-16 15:08:13 +00:00
Vadim Zeitlin
ddc7f0c975 fix virtual function hiding warnings introduced to changing wxSockAddress argument of Connect() to be passed by const reference
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-20 08:59:45 +00:00
Paul Cornett
204abcd474 remove unneccessary header dependencies on wx/thread.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-03 02:55:14 +00:00
Václav Slavík
8650108199 don't use implicit wxString->char*/wchar_t* conversion, it will not be available in wxUSE_STL build in the future
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-10 17:42:41 +00:00
Václav Slavík
2523e9b700 use UTF8-encoded char* strings in UTF8 build instead of wchar_t* if the current locale uses UTF8;
fall back to widechar CRT functions in the locale is not UTF8


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-26 11:40:04 +00:00
Václav Slavík
c9f7896861 first phase of transition to unified Unicode build:
1. changed c_str() to return wxCStrData (implicitly convertible to wxChar*)
2. added template type-safe wrappers for vararg functions
3. added wxUniChar class representing single Unicode character
4. changed wxString::operator[] and wxString::iterator to return wxUniChar


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-17 10:26:10 +00:00
Vadim Zeitlin
886f61cacb fix base64 computation for strings whose length modulo 3 is 2 (patch 1665520; bug 1661616)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-07 23:07:16 +00:00
Włodzimierz Skiba
670f993563 Include wx/app.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-28 12:44:37 +00:00
Julian Smart
dbccd1c261 Applied patch [ 1381420 ] wxHTTP Basic authentication support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-19 10:28:22 +00:00
Vadim Zeitlin
a09f8377ec use for instead of while for infinite loop (the latter provokes a warning from DEC cc)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-08 16:54:43 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Stefan Csomor
8b6b8e21a4 corrected error code for http responses with no content-length indicated (from READ_ERROR to EOF) so that clients of streams can rely on getting EOF or NO_ERROR when everything is ok
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-02 17:30:31 +00:00
Vadim Zeitlin
f3d0213e5b use ReadLine() instead of GetLine() which sometimes hangs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-07-29 22:28:02 +00:00
Włodzimierz Skiba
48f7ffbe93 First part of '[ 1216148 ] cleanup: unused variables and declarations'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34581 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-06-07 19:01:45 +00:00
Vadim Zeitlin
9b0db4529f made IsMainLoopRunning() static and implemented it for wxAppConsole too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29655 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-04 20:21:44 +00:00
Dimitri Schoolwerth
a8d628fcc5 added missing include for non-PCH compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-04 15:23:43 +00:00
Vadim Zeitlin
90fc4a0ccb don't use non blocking sockets if wxApp::IsMainLoopRunnning() returns false (closes 994293)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-04 10:52:32 +00:00
Włodzimierz Skiba
5d3e7b52d8 Source cleaning: whitespaces, tabs, FALSE/false, TRUE/true, -1/wxDefaultCoord, !!/!IsEmpty().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29143 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-15 13:20:18 +00:00
Vadim Zeitlin
06014e4f36 compilation warning about printf type mismatch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-20 22:38:22 +00:00
Vadim Zeitlin
1411f7eb1a compilation fix for wxUSE_THREADS == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-19 08:47:08 +00:00
Stefan Csomor
b8bafcaad8 applied patch 90459
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-15 18:17:31 +00:00
Julian Smart
655719367a Use old licence name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 20:53:33 +00:00
Julian Smart
77ffb5937e Name and version changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 14:56:36 +00:00
Mattia Barbon
bdcade0a10 When wxUSE_STL == 1 and STL provides quasi-standard hash_map/hash_set,
wxHashMap/wxHashSet are just typedefs for them. This makes impossible
to forward declare these classes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-08 20:20:24 +00:00
Vadim Zeitlin
2e622163d0 wxHTTP::GetResponse() added (patch 794394)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-09-20 23:55:32 +00:00
Václav Slavík
14f355c2b5 added support for gcc precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-09 12:46:53 +00:00
David Elliott
0148248250 Use wxGetEmptyString() so the types in the ?: statement are both wxString
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-10 12:27:26 +00:00
Vadim Zeitlin
71414756b2 (blindly) fixed header case confusion (replacement for patch 763760)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-10 11:40:26 +00:00
Vadim Zeitlin
ed83150139 oops, compilation fix after applying the patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-09 22:47:02 +00:00
Vadim Zeitlin
f9133b3200 added support for POST method and alternate ports (part of patch 649438)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-09 22:22:47 +00:00
Mattia Barbon
df5168c427 Added --use-stl to cnfigure, wxUSE_STL to setup0.h
Moved wx/datetime.inl contents to wx/datetime.h and removed
inline redefinition hack.
  Implemented STL-like interface on top of wxList/wxArray, when wxUSE_STL=0.
  Implemented wxList-like and wxArray interfaces on top of std::list and
std::vector, when wxUSE_STL=1.
  Added arrstr.h, moved wxArrayString declaration there; string.h
#includes arrstr.h only if WXWIN_COMPATIBILITY_2_4 is enabled.
  Added WX_CLEAR_HASH_MAP, WX_CLEAR_HASH_TABLE, WX_CLEAR_LIST macros,
to clear a wxHashMap, wxHashTable, wxList containing pointers: deletes
pointers and makes container zero-sized.
  When wxUSE_STL=1, wxStringList works like a std::list<wxString>.
  Made wxBase compile when wxUSE_STL=1.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-08 19:52:35 +00:00
Vadim Zeitlin
a03675d9ba compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 00:39:13 +00:00
Vadim Zeitlin
66feaf3bbf fix for comparison bug in GetHeader()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 23:40:29 +00:00
Vadim Zeitlin
32013d27f6 detect EOF better when reading HTTP reply
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 22:09:09 +00:00
Julian Smart
55d99c7a77 Fixed copyrights and licence spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 11:28:33 +00:00
Ron Lee
b1d4dd7add Split this out from other changes to keep things sane..
wxDeprecated KeyCode.
wxDeprecated old wxList compat methods.
Replaced a large number of them in the gtk build already, but there are
still plenty more so feel free to help nuke them as you find them.
s/^I/    / and s/TRUE/true/ etc. a couple of these too.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 05:17:41 +00:00
Vadim Zeitlin
22f3361e1c use DECLARE_NO_COPY_CLASS() where applicable (patch 633384)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 23:38:11 +00:00