Commit Graph

504 Commits

Author SHA1 Message Date
Alistair Leslie-Hughes 9c6fca1ff7 urlmon: The callback parameter can be null, check pointer before using. 2007-11-28 13:40:29 +01:00
Jacek Caban 03218d6d2c urlmon: Wrap heap functions. 2007-11-26 12:35:28 +01:00
Rob Shearman 862aaaba58 urlmon: Fix a reference count leak in RegisterBindStatusCallback. 2007-11-20 12:28:59 +01:00
Misha Koshelev 57f36261fa urlmon: Fix PROTOCOLDATA message passing in IInternetProtocolSink interface of Binding. 2007-11-12 12:53:45 +01:00
Misha Koshelev 0a158e7aa3 urlmon: Release IInternetProtocolSink and BindInfo on request handle closure, not on first handle closure. 2007-11-12 12:53:37 +01:00
Andrew Talbot 509760922a urlmon: Constify some variables. 2007-11-08 12:18:30 +01:00
Jacek Caban 48d393bdfe urlmon: Added https protocol class factory stub implementation. 2007-11-05 14:19:59 +01:00
Rob Shearman cfb349c4f2 urlmon: Add tests for BindToObject for URL monikers based on the existing tests for BindToStorage. 2007-10-29 12:02:40 +01:00
Jacek Caban fe04ba0aab urlmon: Use QueryInterface in get_callback. 2007-10-26 14:04:08 +02:00
Jacek Caban c98ca177a8 urlmon: Fixed tests on IE7. 2007-10-26 14:03:46 +02:00
Jacek Caban f4f0c8fbcd urlmon: Added emulated http tests. 2007-10-26 14:03:46 +02:00
Jacek Caban f9545ad94f urlmon: Added application/postscript MIME filter. 2007-10-23 18:18:28 +02:00
Jacek Caban 58e8b19d0b urlmon: Added audio/wav MIME filter. 2007-10-23 18:18:28 +02:00
Jacek Caban ec565fbfd9 urlmon: Added text/richtext MIME filter. 2007-10-23 18:18:28 +02:00
Rob Shearman a3ad394f9c urlmon: Add a stub for GetClassFileOrMime. 2007-10-22 14:54:39 +02:00
Rob Shearman cfeaa3e682 urlmon: Fix the MIME type reported by the HTTP protocol when the Content-Type headers contains charset data too. 2007-10-22 13:52:38 +02:00
Misha Koshelev 5a96cc146c urlmon: Increment/decrement reference count when internet handles are created/destroyed. 2007-10-12 11:07:29 +02:00
Andrew Talbot dbf995a8b4 urlmon: Fix some memory leaks. 2007-10-10 11:56:51 +02:00
Jacek Caban 5c57c838b2 urlmon: Fixed test on IE7. 2007-10-09 17:52:46 +02:00
Jacek Caban 8f6f252ee8 urlmon: Get rid of no longer needed IHttpNegotiate wrapper. 2007-10-02 11:42:39 +02:00
Jacek Caban b090ec13f3 urlmon: Added more RegiterBindStatusCallback tests. 2007-10-02 11:42:34 +02:00
Jacek Caban ef01bdb18a urlmon: Added more strict QueryInterface tests. 2007-10-02 11:42:27 +02:00
Jacek Caban b285d562b3 urlmon: Wrap callback in RegisterBindStatusCallback. 2007-10-02 11:42:22 +02:00
Jacek Caban c89551a1c5 urlmon: Added FIXME about unsupported pmkToLeft to BindToStorage. 2007-09-10 16:15:28 +02:00
Stefan Leichter ba026b1634 urlmon: Remove 'recursive registry key delete' function. 2007-08-20 11:56:18 +02:00
Misha Koshelev 5a11a1201f urlmon: Call IInternetProtocolSink_Release and ReleaseStgMedium in HttpProtocol where native does. 2007-08-16 11:52:56 +02:00
Misha Koshelev c8ab2a947c urlmon: Call IInternetProtocolSink_AddRef in HttpProtocol where native does (but just once). 2007-08-16 11:52:34 +02:00
Misha Koshelev 4f405b228d urlmon: Fix timing issue with FLAG_REQUEST_COMPLETE and InternetQueryDataAvailable in HttpProtocol_Continue. 2007-08-14 12:25:26 +02:00
Jacek Caban 83a83880cd urlmon: Wrap IBindCtx in CreateAsyncBindCtxEx. 2007-08-13 11:37:45 +02:00
Misha Koshelev 369273e991 urlmon/tests: Call CHECK_CALLED(OnProgress_SENDINGREQUEST) for FILE_TEST since we SET_EXPECT it. 2007-08-09 13:53:32 +02:00
Misha Koshelev 42dea36e5a urlmon: Do not use BindToStorage_hack for INTERNET_SCHEME_HTTP. 2007-08-09 13:53:25 +02:00
Misha Koshelev a893bb32d6 urlmon/tests: Fix clipformat test. 2007-08-09 13:53:16 +02:00
Rob Shearman 086a91facf urlmon: Check some of the input parameters to URLOpenStreamA/W & URLOpenBlockingStreamA/W for NULL.
Add tests for these.
2007-08-08 15:32:04 +02:00
Rob Shearman a5da813f5a urlmon: Add tests for URLOpenStreamW and URLOpenBlockingStreamW. 2007-08-08 15:32:04 +02:00
Rob Shearman 9debcb8f49 urlmon: Implement URLOpenBlockingStreamA/W and URLOpenStreamA/W. 2007-08-08 15:32:04 +02:00
Rob Shearman 25b2bff9bf urlmon: The pcbRead parameter for IInternetProtocol::Read is optional, so fix the protocol implementation to check for this. 2007-08-08 15:32:04 +02:00
Rob Shearman 9105b64a77 urlmon: Implement stubs for URLOpenBlockingStreamA/W and URLOpenStreamA/W. 2007-08-08 15:32:04 +02:00
Francois Gouget 988be5dd8f urlmon: Fix compilation on systems that don't support nameless unions. 2007-08-08 15:32:03 +02:00
Misha Koshelev 59b2365c7d urlmon/tests: Add test for binding to a URL from which a very short response is received. 2007-08-08 15:32:00 +02:00
Misha Koshelev 84cf17c3e9 urlmon/tests: Keep track of download state in tests. 2007-08-07 12:42:00 +02:00
Misha Koshelev ed2cf42b51 urlmon/tests: Add tests for synchronous vs asynchronous binding. 2007-08-07 12:41:54 +02:00
Misha Koshelev 97e999565d urlmon: Add support for synchronous binding. 2007-08-07 12:41:44 +02:00
Misha Koshelev e54a48f96c urlmon/tests: Declare the bind flags as a global variable in url tests. 2007-08-07 12:41:25 +02:00
Misha Koshelev ea37fa998c urlmon/tests: Fix todo_wine's to show the IServiceProvider interface is not queried on wine from CreateAsyncBindCtx. 2007-08-06 14:02:56 +02:00
Misha Koshelev b2beeea5b2 urlmon: Send BINDSTATUS_DOWNLOADINGDATA if we do not send BEGINDOWNLOADDATA or ENDDOWNLOADDATA. 2007-08-03 13:35:53 +02:00
Misha Koshelev b2558480c2 urlmon: Call IBindStatusCallback_OnStopBinding only if this actually is the last ReportData. 2007-08-03 13:35:46 +02:00
Misha Koshelev 99989f8241 Revert "urlmon: Use BSCF_ values passed to report_data to keep track of download state."
This reverts commit 978f6b98c9.
2007-08-03 13:35:35 +02:00
Misha Koshelev aa12574d09 Revert "urlmon: Report BINDSTATUS_DOWNLOADINGDATA on BSCF_INTERMEDIATEDATANOTIFICATION."
This reverts commit b3a660a69c.
2007-08-03 13:35:19 +02:00
Misha Koshelev cb8a0dd70d urlmon: Do not fill stream buffer on every report_data, native doesn't. 2007-08-02 12:44:21 +02:00
Misha Koshelev 55409b2e04 urlmon: Report total data read in this bind operation to OnDataAvailable, not the size of the available buffer. 2007-08-02 12:44:15 +02:00
Misha Koshelev b3a660a69c urlmon: Report BINDSTATUS_DOWNLOADINGDATA on BSCF_INTERMEDIATEDATANOTIFICATION. 2007-08-02 12:44:10 +02:00
Misha Koshelev 978f6b98c9 urlmon: Use BSCF_ values passed to report_data to keep track of download state. 2007-08-02 12:44:03 +02:00
Misha Koshelev a63419bc2c urlmon: Set the queue tail to the new task when pushing a task onto the tail of the queue. 2007-08-02 12:43:21 +02:00
Misha Koshelev 0a9dfa0d27 urlmon/tests: Make http protocol tests refractory to timing issues. 2007-07-27 12:25:05 +02:00
Misha Koshelev 9f31fb2fd4 urlmon/tests: Rename received_data event to more general name event_complete. 2007-07-27 12:24:50 +02:00
Misha Koshelev c4f1adb7cc urlmon/tests: Don't proceed with POST operation (that will fail) if we run out of memory. 2007-07-26 12:34:07 +02:00
Misha Koshelev d5fedcdab0 urlmon/tests: Fix http protocol tests with absence of BINDF_FROMURLMON to properly expect ReportData. 2007-07-26 12:33:58 +02:00
Misha Koshelev a8aa3fb546 urlmon: Don't free structures that are used by asynchronous HttpSendRequest until we are sure they won't be used. 2007-07-26 12:33:49 +02:00
Jacek Caban 262db80776 urlmon: Change some gotos to return. 2007-07-26 11:51:11 +02:00
Misha Koshelev 0c0285118e urlmon/tests: Release two objects that should be released but are not. 2007-07-24 12:32:57 +02:00
Misha Koshelev 752334c561 urlmon: Release IInternetProtocolInfo returned from get_protocol_info when finished with it. 2007-07-24 12:32:52 +02:00
Misha Koshelev f5ed5a7f48 urlmon: LockModule in create_binding_protocol as we ReleaseModule when the object is released. 2007-07-24 12:32:47 +02:00
Misha Koshelev 414ddfa671 urlmon: If we are using an internal protocol ClassFactory, call its AddRef as the caller must Release the object. 2007-07-24 12:32:42 +02:00
Misha Koshelev 7cc8b279fb urlmon: Wrap IHttpNegotiate2 interface exposed by IBindStatusCallback as done by native. 2007-07-24 12:19:19 +02:00
Misha Koshelev 8f78c71cb6 urlmon/tests: Add tests for calls to IHttpNegotiate interfaces as exposed by IBindStatusCallback.
Add more tests for specific arguments passed to IHttpNegotiate and IHttpNegotiate2. Note that
for OnResponse pszAdditionalHeaders is NULL when called directly from IInternetProtocol (for
example as seen in our protocol tests) but non-NULL when these interfaces are exposed by
IBindStatusCallback as seen here. Tests conform on Win98 and Winxp.
2007-07-24 12:19:08 +02:00
Misha Koshelev 89bda10960 urlmon/tests: Add tests for calls to IBindStatusCallback_QueryInterface. 2007-07-24 12:18:52 +02:00
Misha Koshelev 2b4c52014e urlmon: Add a reference to the IUnknown for Release of STGMEDIUM to account for extra call to ReleaseBindInfo. 2007-07-24 12:18:30 +02:00
Misha Koshelev 40b94b733b urlmon: ReleaseBindInfo in FileProtocol. 2007-07-24 12:18:24 +02:00
Misha Koshelev 03ac3b5e95 urlmon: Don't ignore bytes read from IInternetProtocol_Read if hres is not S_OK (e.g., E_PENDING).
Bytes can still be read with E_PENDING returned if the whole request could not be satisfied, don't
ignore those.
2007-07-24 12:18:15 +02:00
Misha Koshelev 9bcb9c16ec urlmon: Fix timing issue with FLAG_REQUEST_COMPLETE and InternetQueryDataAvailable in HttpProtocol. 2007-07-24 12:17:58 +02:00
Misha Koshelev a58da4c49a urlmon: Add support for non-GET requests (e.g., POST) in HttpProtocol. 2007-07-23 11:57:56 +02:00
Misha Koshelev 609d91fb0c urlmon: Actually send the additional headers returned by IHttpNegotiate::BeginningTransaction. 2007-07-23 11:57:50 +02:00
Misha Koshelev 2a4e41878d urlmon: Call HttpOpenRequest with INTERNET_FLAG_KEEP_CONNECTION, INTERNET_FLAG_NO_CACHE_WRITE if appropriate. 2007-07-23 11:57:35 +02:00
Misha Koshelev e9312fbc92 urlmon/tests: Add test for BINDVERB_POST in http_protocol. 2007-07-23 11:57:23 +02:00
Misha Koshelev 4e205947e7 urlmon/tests: Add tests for HttpProtocol behavior when it is called without the BINDF_FROMURLMON flag. 2007-07-19 11:59:27 +02:00
Misha Koshelev b6aea93891 urlmon: Implement HttpProtocol::Terminate. 2007-07-19 11:59:15 +02:00
Misha Koshelev 043f71b576 urlmon: Fix HttpProtocol behavior when it is called without the BINDF_FROMURLMON flag. 2007-07-19 11:59:04 +02:00
Misha Koshelev 0878627071 urlmon/tests: Fix http_protocol tests to succeed when called more than once. 2007-07-19 11:58:57 +02:00
Misha Koshelev e2726effe2 urlmon/tests: Fix http_protocol tests to succeed on Win98. 2007-07-19 11:58:39 +02:00
Misha Koshelev c2534d0cd6 urlmon: Use InternetCloseHandle instead of CloseHandle. 2007-07-19 11:58:30 +02:00
Misha Koshelev 442ec6acdd urlmon: Remove FLAG_CALLED_SWITCH, which is now redundant. 2007-07-19 11:58:24 +02:00
Misha Koshelev fc48d6da73 urlmon: Fix HttpProtocol behavior when InternetQueryDataAvailable returns ERROR_IO_PENDING. 2007-07-16 14:59:11 +02:00
Misha Koshelev 11ccc0f79e urlmon: Make HttpProtocol conform with native wininet on wine. 2007-07-12 13:00:24 +02:00
Misha Koshelev 213bfd2777 urlmon: Fix HttpProtocol_Start and strndupW to work properly with native wininet. 2007-07-12 12:59:44 +02:00
Misha Koshelev dab80a8d9f urlmon: Implement HttpProtocol. 2007-07-11 12:42:14 +02:00
Misha Koshelev 82569d9d0a urlmon/tests: Add tests for ObtainUserAgentString. 2007-07-10 13:37:13 +02:00
Misha Koshelev e4282a59dd urlmon: Improve ObtainUserAgentString conformance to native. 2007-07-10 13:37:09 +02:00
Misha Koshelev 64054b005c urlmon/tests: Make http protocol mime type test pass on native. 2007-07-09 12:16:23 +02:00
Jacek Caban daca693f30 urlmon: Don't pass query part of URL to CreateUrlCacheEntryW. 2007-06-06 13:40:05 +02:00
Jacek Caban 172a35c442 urlmon: There is no need to make slash conversion in BindToStorage as URL is already canonized in the constructor. 2007-05-29 14:13:13 +02:00
Francois Gouget c85b74d63e In the PSDK HRESULT_FROM_WIN32() is now an inline function, and it is __HRESULT_FROM_WIN32() which is a macro. 2007-05-29 13:17:46 +02:00
Rob Shearman d82c456e5f urlmon: The persisted version of URL monikers should be size of URL
including nul-terminating character (4-bytes), followed by the URL
string including nul-terminating character.
2007-05-24 11:35:08 +02:00
Rob Shearman d76a15a36d urlmon: Fix a typo in URLMonikerImpl_Save.
The data in This->URLName should be written out, not the pointer 
followed by garbage.
2007-05-24 11:34:56 +02:00
Hans Leidekker 691b0a3d68 urlmon: Add an implementation for CreateURLMonikerEx based on existing code for CreateURLMoniker. 2007-04-23 14:06:13 +02:00
Rob Shearman fd8868bac4 urlmon: Fix a reference count leak that would keep the module alive when it shouldn't. 2007-04-02 11:34:32 +02:00
Jan Zerebecki cfd121072c urlmon: Add DebugInfo to critical sections. 2007-03-12 13:40:06 +01:00
Jacek Caban 74d49757c7 urlmon: Fix FindMimeFromData tests on IE7. 2007-03-02 11:39:36 +01:00
Jacek Caban d31969b5e6 urlmon: Check if protocol object implements IInternetProtocolInfo interface. 2007-02-23 11:24:01 +01:00
Jacek Caban 102ae714c7 urlmon: Added mk protocol handling test. 2007-02-12 14:14:01 +01:00
Jacek Caban c5280fcc00 urlmon: Added test of handlong its protocol. 2007-02-12 14:13:54 +01:00
Jacek Caban c374936472 urlmon: Depend on Read result in report_data. 2007-02-12 14:13:48 +01:00
Jacek Caban f66b99db83 urlmon: Store download state in Binding object. 2007-02-12 14:13:43 +01:00
Jacek Caban 6299859ee7 urlmon: Fix continue_call handling. 2007-02-08 11:56:59 +01:00
Jacek Caban 88f76cc29e urlmon: Call OnProgress directly in report_data. 2007-02-08 11:56:51 +01:00
Jacek Caban 4613567d32 urlmon: Added ReportProgress(BINDSTATUS_DIRECTBIND) implementation. 2007-02-08 11:56:46 +01:00
Jacek Caban f799192b3e urlmon: Fix ReportResult on async protocols. 2007-02-08 11:56:33 +01:00
Jacek Caban 2eb2d74052 urlmon: Use queue for whole ReportData implementation. 2007-02-07 21:44:51 +01:00
Jacek Caban 16bf14d129 urlmon: Added ReportProgress(BINDSTATUS_BEGINDOWNLOADDATA) implementation. 2007-02-07 21:44:44 +01:00
Jacek Caban 4e4b589079 urlmon: Use custom task structs. 2007-02-07 21:44:38 +01:00
Jacek Caban 079e3822bc urlmon: Use proc instead of enum in task queue. 2007-02-07 21:44:30 +01:00
Jacek Caban e8d2b54309 urlmon: Unlock protocol only if it was locked. 2007-02-07 21:44:18 +01:00
Jacek Caban 451a8a6dd0 urlmon: Set BINDF_NEEDFILE flag for all not urlmon protocols. 2007-02-07 21:44:13 +01:00
Paul Vriens f5035577fb urlmon: Cast-qual warning fixes. 2007-02-07 11:03:50 +01:00
Paul Vriens bb6e47af6c urlmon: Cast-qual warning fix. 2007-02-07 11:03:44 +01:00
Jacek Caban e39a96c5fb urlmon: Fix zone tests. 2007-02-06 22:07:16 +01:00
Jan Zerebecki ea6ee42c71 urlmon: Remove redundant const. 2007-02-06 13:20:03 +01:00
Jacek Caban 1ba20d3b8b urlmon: Code clean up. 2007-02-05 12:24:16 +01:00
Jacek Caban 76b821bdd7 urlmon: Call AddRef in CoInternetGetSession. 2007-02-05 12:24:12 +01:00
Jan Zerebecki 85410f2ac1 urlmon: Fix type of an empty string to avoid warning. 2007-01-25 11:06:08 +01:00
Jacek Caban fed5d9e1ff urlmon: Added BindProtocol's IInternetPriority implementation. 2007-01-24 12:32:47 +01:00
Jacek Caban 61f646f2c1 urlmon: Added CreateBinding test. 2007-01-24 12:01:02 +01:00
Jacek Caban 60df6e06a5 urlmon: Added beginning BindProtocol implementation. 2007-01-24 12:00:54 +01:00
Jacek Caban 87de64227a urlmon: Return CLSID from get_protocol_handler. 2007-01-24 12:00:46 +01:00
Jacek Caban 6c13f391da urlmon: Added IInternetProtocolSink interface to BindProtocol. 2007-01-24 12:00:37 +01:00
Jacek Caban 6bbd8c7f6e urlmon: Added IInternetPriority interface to BindProtocol. 2007-01-24 11:59:50 +01:00
Jacek Caban e40f814be0 urlmon: Added IInternetSession::CreateBinding beginning implementation. 2007-01-24 11:59:34 +01:00
Francois Gouget b0bde6b87c Assorted spelling fixes. 2007-01-18 12:56:52 +01:00
Jacek Caban 6ea7a445ce urlmon: Added mk protocol implementation. 2007-01-15 12:22:51 +01:00
Jacek Caban 76ce82374e urlmon: Added mk protocol stub implementation. 2007-01-12 20:40:54 +01:00
Jacek Caban 243549c5b2 urlmon: Code clean up. 2007-01-12 20:40:27 +01:00
Francois Gouget f96ddb27ac urlmon/tests: Replace some '#if 0's with 'if (0)'s.
Fix the code so it compiles without warnings.
2007-01-08 12:08:08 +01:00
Francois Gouget 4dc5c7aede urlmon: Print GetLastError() in decimal with '%u'. 2007-01-05 18:24:17 +01:00
Jacek Caban f89edb19af urlmon: Remove failing tests. 2006-12-27 13:02:23 +01:00
Alexandre Julliard f92ef1c543 makedep: Add support for magic comments in .rc files so we can generate proper dependencies for them. 2006-12-26 15:02:03 +01:00
Jacek Caban bb52f14d59 urlmon: Use pluggable protocol in CoInternetCompareUrl. 2006-12-13 16:04:48 +01:00
Jacek Caban 35e0e994ce urlmon: Added application/x-msdownload mime filter. 2006-12-13 16:04:48 +01:00
Jacek Caban 8afd947f15 urlmon: Added application/pdf mime filter. 2006-12-07 11:24:22 +01:00
Jacek Caban edf73245fe urlmon: Added application/java mime filter. 2006-12-07 11:24:16 +01:00
Jacek Caban d5c6f6ec25 urlmon: Added application/x-zip-compressed filter. 2006-12-07 11:24:07 +01:00
Jacek Caban 3d767fcb55 urlmon: Added application/x-gzip-compression filter. 2006-12-07 11:24:01 +01:00
Dmitry Timoshkov 8b72102bd7 urlmon: Make some data const. 2006-11-29 12:44:16 +01:00
Andrew Talbot 60cafb5e95 urlmon: Cast-qual warnings fix. 2006-11-17 12:45:35 +01:00
Francois Gouget 43b52ebb8e urlmon/tests: Fix compilation with the PSDK headers. 2006-11-07 15:29:29 +01:00
Jacek Caban ee5a440030 urlmon: Update winehq.org IP. 2006-10-30 11:17:17 +01:00
Francois Gouget 9fe4673347 Don't include windows.h & co in the Wine sources.
Remove uneeded COM_NO_WINDOWS_H defines.
2006-10-24 17:47:09 +02:00
Jacek Caban 53f68ae3e6 urlmon: Added video/mpeg mime filter. 2006-10-24 11:43:25 +02:00
Jacek Caban 3515dbc37c urlmon: Code clean up. 2006-10-24 11:43:18 +02:00
Jacek Caban 84253b011d urlmon: Added video/avi mime filter implementation. 2006-10-24 11:43:01 +02:00
Jacek Caban b9b812da70 urlmon: Added image/tiff mime filter. 2006-10-23 12:29:08 +02:00
Alexandre Julliard d3d3aba3a3 urlmon: Create a message window for each binding to make sure they are cleaned up properly. 2006-10-16 11:32:17 +02:00