History log of /external/bluetooth/glib/gio/win32/gwinhttpfileoutputstream.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2f575b95ac14f34d0f17efd5de69f8d1b37e7bff 12-Nov-2008 Tor Lillqvist <tml@novell.com> Bug 556415 - Crash on Windows 2000 in g_winhttp_vfs_init()

2008-11-12 Tor Lillqvist <tml@novell.com>

Bug 556415 - Crash on Windows 2000 in g_winhttp_vfs_init()

* win32/gwinhttpvfs.h: Move the set of function pointers to
winhttp.dll into a separate struct GWinHttpDllFuncs. Just have a
pointer to that in the GWinHttpVfsClass.

* win32/gwinhttpvfs.c: Move the lookup of functions from
winhttp.dll into a function of its own, that stores the pointers
in a separate GWinHttpDllFuncs variable. Add two bookeeping
booleans lookup_done and funcs_found.

Don't call g_io_extension_point_implement() to register the
winhttp extension unless winhttp.dll has been successfully loaded
and the required functions found in it.

* win32/gwinhttp*.c: Adjust calls of the functions looked up from
winhttp.dll correspondingly.


svn path=/trunk/; revision=7648
/external/bluetooth/glib/gio/win32/gwinhttpfileoutputstream.c
d5863830ad51529cb4f5f82016790ea8c03110e9 13-Aug-2008 Tor Lillqvist <tml@novell.com> win32/gwinhttpvfs.c win32/gwinhttpvfs.h win32/gwinhttpfile.c

2008-08-13 Tor Lillqvist <tml@novell.com>

* win32/gwinhttpvfs.c
* win32/gwinhttpvfs.h
* win32/gwinhttpfile.c
* win32/gwinhttpfileinputstream.c
* win32/gwinhttpfileoutputstream.c: Refactor some common code
snippets into helper functions. Check HTTP response status
codes. Implement g_winhttp_file_query_info(), looking at
Content-Length, Content-Type and Last-Modified.

* win32/winhttp.h: Add some symbolic constants that are not
publicly documented. Just a handful, so it should be OK to use
information from the Windows SDK's headers.


svn path=/trunk/; revision=7350
/external/bluetooth/glib/gio/win32/gwinhttpfileoutputstream.c
af8ebc9e552b6062e916c1bfc3982de8da4340d4 13-Aug-2008 Tor Lillqvist <tml@novell.com> Don't write the Content-Length header ourselves, WinHttpSendRequest()

2008-08-13 Tor Lillqvist <tml@novell.com>

* win32/gwinhttpfileoutputstream.c
(g_winhttp_file_output_stream_write): Don't write the
Content-Length header ourselves, WinHttpSendRequest() takes care
of that when the dwTotalLength parameter is non-zero. Increment
offset by the number of actual bytes sent, although I wonder if
such a scenario is possible where less than requested would be
sent and accepted by the server without errors.


svn path=/trunk/; revision=7345
/external/bluetooth/glib/gio/win32/gwinhttpfileoutputstream.c
7261372b4534336fbe12d4d5f2aef9460d50bde3 13-Aug-2008 Tor Lillqvist <tml@novell.com> win32/gwinhttpvfs.c win32/gwinhttpvfs.h win32/gwinhttpfile.c

2008-08-13 Tor Lillqvist <tml@novell.com>

* win32/gwinhttpvfs.c
* win32/gwinhttpvfs.h
* win32/gwinhttpfile.c
* win32/gwinhttpfile.h
* win32/gwinhttpfileinputstream.c
* win32/gwinhttpfileinputstream.h
* win32/gwinhttpfileoutputstream.c
* win32/gwinhttpfileoutputstream.h: New files implementing
GWinHttpVfs and related classes, a GVfs for HTTP and HTTPS URIs on
Windows. The implementation uses the WinHttp API. Both reading and
writing are supported, i.e. GET and PUT requests. When writing,
each write call is done using a separate PUT request with a
Content-Range header. Requests for file URIs and plain pathnames
are forwarded to GLocalVfs.

* win32/winhttp.h: Reverse engineered <winhttp.h>, borrowed from
WINE. Used as there is no <winhttp.h> bundled with mingw, and
requiring people to download the Windows SDK just for this one
header is not reasonable.

* win32/Makefile.am: Add above files.

* giomodule.c: Call _g_winhttp_vfs_get_type() on Windows to set up
the plumbing for the above.


svn path=/trunk/; revision=7344
/external/bluetooth/glib/gio/win32/gwinhttpfileoutputstream.c