Commit Graph

445 Commits

Author SHA1 Message Date
valeski%netscape.com
43edbee475 r=warren, 15457. Added file extension attribute to URL implementations 1999-10-06 14:36:22 +00:00
warren%netscape.com
6bf20c1230 Fixed nsCOMPtr bustage. 1999-10-06 09:03:43 +00:00
warren%netscape.com
8603974025 Added AsyncOpen to nsIChannel for URL dispatching. Added ContentLength to InputStreamChannel. (r=rpotts,valeski) 1999-10-06 08:26:01 +00:00
gagan%netscape.com
69ba56eaff An event sink to transfer status codes to a consumer of necko.
This is not in the build as yet.
1999-10-06 07:49:32 +00:00
warren%netscape.com
4e3e38be06 Added nsIFileSystem interface for new file transport implementation. 1999-10-06 07:27:22 +00:00
mscott%netscape.com
7943c66745 Bug #0000 (no bug # needed) remove nsIStreamConverter2.idl r=valeski 1999-10-06 03:27:15 +00:00
mscott%netscape.com
1dd1fb17b2 bug #000 (no bug # needed). removing obsolete file from the build
nsIStreamconverter2.idl
r=valeski
1999-10-06 03:21:44 +00:00
mscott%netscape.com
51134f93b3 Bug #000 (no bug number needed) remove an obsolete file from the build (nsIStreamConverter2.idl)
r=valeski
1999-10-06 03:20:39 +00:00
rpotts%netscape.com
1dd0ecd453 Added a missing lock to nsSocketTransport::OnFull... reviewed by warren. 1999-10-05 08:41:37 +00:00
valeski%netscape.com
57515c5355 15300 r=warren. Changed NS_NewThread api to default to PR_UNJOINABLE_THREAD, also added new NS_NewThread() function so you don't have to combine the runnable w/ thread creation. added threads to xpcom init so you can create them w/ the com mgr. 15298 r=gagan, FTP threads are now synched w/ ftp handler shutdown, removed extraneous buffer work, added ftp authentication, and ftp channel content length 1999-10-01 23:32:12 +00:00
dougt%netscape.com
38f4e29eb0 adding hostname to socket provider. (r) warren. 1999-10-01 23:23:49 +00:00
warren%netscape.com
121ccf3671 Cleanup 1999-09-26 10:12:54 +00:00
warren%netscape.com
3e9e99b661 Fixed NewChannel to not look up service twice 1999-09-26 10:11:36 +00:00
warren%netscape.com
4c7cb0ab7c Fixed bug#14863 Network buffer size too large 1999-09-25 08:54:45 +00:00
pavlov%netscape.com
2fc547acaa implimented GetURI() 1999-09-22 06:27:37 +00:00
kipp%netscape.com
aa26582241 Fixed some of bug #6193 1999-09-21 22:27:06 +00:00
valeski%netscape.com
841057f534 removed dependency on #include string.h nsSocketTransportService.cpp 1999-09-21 21:32:01 +00:00
valeski%netscape.com
fd355442ad removed extraneous #include nsString2.h nsSocketTransport.cpp 1999-09-21 21:24:32 +00:00
valeski%netscape.com
57cc4f180e removed dependency on ctype.h and made a few optimizations 1999-09-21 20:37:01 +00:00
rpotts%netscape.com
50c44ebef0 Checking in a patch that ramiro gave me to fix some multi-processor Linux woes... 1999-09-21 08:29:18 +00:00
rpotts%netscape.com
4012f7b8c2 Reworked how the socket transport uses the DNS service - as discussed with gordon... 1999-09-21 08:02:06 +00:00
warren%netscape.com
bde1055a86 Fixed warnings. 1999-09-20 20:57:21 +00:00
warren%netscape.com
1071d02393 exited threads on shutdown in nsFileTransportService 1999-09-20 20:53:09 +00:00
sspitzer%netscape.com
259ce26195 fix for #14326
r=gagan
nsStdURL was not correctly parsing the host out of url's like "foo://bar@cheese"
1999-09-20 07:45:42 +00:00
rpotts%netscape.com
0f2bc33329 The nsLoadGroup now supports nsWeakReference... 1999-09-20 05:27:50 +00:00
mccabe%netscape.com
4f7990cd94 Fix to 7610. Modify xpidl compiler to add 'const' to the method signature for generated attribute setter methods for string, wstring and nsid attributes.
As this changed the generated interface signatures, I had to change all of the uses to avoid bustage.  Any corners of the browser that aren't built by default, or that I haven't discovered how to build, may be at risk of bustage if they use string or wstring attributes.  (This could mean blackwood; sorry, guys!)

Many thanks to Alec Flett (alecf@netscape.com) for preparing diffs for the mailnews portion of the signature changes; thanks also to Ariel Backenroth (arielb@rice.edu) and Mike Shaver (shaver@mozilla.org) for help with updating the tree with NS_DECL_NSIFOO macros; everwhere where one of these macros was used was one less place I had to manually add 'const'.

Also removed extraneous space from generated method signatures, leftover from Brendan's capitalization spam, and made 'const decl must be of type short or long' an error rather than just a warning.
1999-09-19 23:46:35 +00:00
andreas.otte%primus-online.de
1cae2db3a1 modified comment to DirFile to reflect changed nsStdURL.cpp 1999-09-18 09:24:17 +00:00
andreas.otte%primus-online.de
c2931d16b3 fixing a memory leak, thanks David 1999-09-18 09:06:23 +00:00
slamm%netscape.com
d4f05404b5 Re-order initializers to match class declarations (i.e. fix build warning). 1999-09-18 01:38:46 +00:00
andreas.otte%primus-online.de
1d3ac5be65 fix for bug 14132 1999-09-17 14:52:39 +00:00
andreas.otte%primus-online.de
c67042c8b1 fix for bug 12059, bug 13311, bug 13313, bug 12769, bug 11643 and bug 11648 1999-09-16 20:08:21 +00:00
dp%netscape.com
d0ccf9a6eb Ability for XPCOM to use non-default component registry and component directory 1999-09-16 19:28:57 +00:00
rpotts%netscape.com
5205b9890f Fire an OnStopRequest notification if the load group is cancelled... 1999-09-16 08:53:21 +00:00
warren%netscape.com
ba45516208 Fix for the editor coming up DOA. nsInputStreamChannel wasn't getting the load group propagated to it. 1999-09-16 08:03:02 +00:00
warren%netscape.com
4ac98d62ef Added missing includes for nsCOMPtr (why doesn't Windows complain about this!). 1999-09-16 01:48:00 +00:00
warren%netscape.com
3283a0e5f9 removed in favor of idl 1999-09-16 01:25:54 +00:00
warren%netscape.com
7d5e565fd5 Factored file transport service out of file: protocol. 1999-09-16 01:16:22 +00:00
slamm%netscape.com
ad29db07a7 Fix build warnings. 1999-09-15 19:18:15 +00:00
warren%netscape.com
be2ef806ea idl versions 1999-09-15 09:51:46 +00:00
warren%netscape.com
279545985d Adding includes for nsIThreadPool.h and nsIRunnable.h in anticipation of idl files. 1999-09-15 09:49:18 +00:00
valeski%netscape.com
fea615e364 content types are now forced to lower case: 13609 1999-09-14 19:42:09 +00:00
warren%netscape.com
f5b8d2c733 Getting ready to turn on the new file transport. 1999-09-14 04:36:16 +00:00
briano%netscape.com
a54c669e40 General cleanup. 1999-09-14 01:35:43 +00:00
warren%netscape.com
1072360e3f Moving this from netwerk/protocol/file/src. 1999-09-13 20:20:21 +00:00
warren%netscape.com
9d0374e06a New modernized file transport. I'm in the process of factoring this out from nsFileChannel. 1999-09-13 20:19:32 +00:00
valeski%netscape.com
ae6af510a2 beefed up the user agent string component initialization stuff, see bug 10465 for more info 1999-09-13 18:35:27 +00:00
rpotts%netscape.com
c69272c96e Throw away any pending channels when Cancel is called... 1999-09-12 08:44:53 +00:00
rpotts%netscape.com
c1578109bd The DNS Service is now used for hostname resolution... 1999-09-12 05:29:27 +00:00
warren%netscape.com
834f4d890e Re-adding these files. 1999-09-11 22:32:20 +00:00
warren%netscape.com
31bc33179f Attempt to fix linux bustage. 1999-09-11 20:45:50 +00:00
warren%netscape.com
506438ded2 More fixes for nsCOMPtr inconsistencies. 1999-09-11 19:43:06 +00:00
warren%netscape.com
df96620f94 Fix for linux breakage. 1999-09-11 19:32:03 +00:00
warren%netscape.com
d3eb73be23 Removed caps dependency from necko. Used nsCOMPtr for nsInputStreamChannel. 1999-09-11 18:45:36 +00:00
mscott%netscape.com
d3aa1711da export nsIRequest.idl so other idl files outside of netwerk can inherit from it. 1999-09-11 05:13:13 +00:00
warren%netscape.com
04332c183c Reduced IO buffer and transfer size. 1999-09-11 00:56:22 +00:00
mscott%netscape.com
fe4d9c99f3 export nsIChannel.idl so other idl files outside of netwerk can inherit from it. 1999-09-10 23:23:24 +00:00
valeski%netscape.com
96799ab633 added more robust/accurate numeric ip address check 1999-09-10 22:33:09 +00:00
valeski%netscape.com
4513ebaee5 forcing CString and setting capacitynsStdURL.cpp 1999-09-10 18:30:51 +00:00
warren%netscape.com
2ea5b49ec9 Fix for blocking output streams (affects mailnews). Basically we were calling ReadSegments with a 0 count, and when it returned 0 we thought it was EOF. 1999-09-10 01:46:49 +00:00
vidur%netscape.com
8fae5bb797 nsLoadGroup now uses weak pointers for observers and LoadGroupListenerFactory. 1999-09-09 23:55:19 +00:00
warren%netscape.com
40ed9d6ad2 Removed NS_BASE_STREAM_EOF in favor of returning a count of 0 from Read to indicate EOF. Renamed GetLength to Available. Fixed a number of places where AppendElement's broken error code wasn't checked. 1999-09-09 22:05:05 +00:00
rpotts%netscape.com
d78c217f46 bug #11376. I added GetContentLength to nsIChannel so the content length can be gotten from a channel... 1999-09-09 05:07:30 +00:00
briano%netscape.com
c858c8cd9c General cleanup. 1999-09-09 02:02:21 +00:00
briano%netscape.com
b77bbb9a68 Removed the obsolete non-NECKO leftovers. 1999-09-09 00:41:10 +00:00
brendan%mozilla.org
f3bfcd687b Don't abuse nsAutoLock in single-exit nsSocketTransport::Process and PR_Unlock
and relock it in subroutines -- this causes false deadlock-detection positives.
Also comment module callouts with lock held.
1999-09-08 06:17:20 +00:00
cls%seawood.org
91c70687a3 include <string.h> for when it disappears from nsID.h again. 1999-09-06 23:08:43 +00:00
brendan%mozilla.org
a84076e44e Expand tabs to spaces per Emacs modeline; other space cleanups. 1999-09-06 22:59:11 +00:00
valeski%netscape.com
f7e8b6cd05 changed nsCOMTypeInfo<> template to NS_GET_IID macro 1999-09-03 23:51:14 +00:00
bruce%cybersight.com
f67b510aa5 Use nsCRT::free() instead of delete[] for char* data. 1999-09-03 07:53:26 +00:00
kipp%netscape.com
78bace2449 Use nsAutoString instead of nsString for temps 1999-09-02 18:13:07 +00:00
dougt%netscape.com
4b6c318cdc Bug fix for 12702.
Adding notes to remove nsIAtom comparison by string.
1999-09-01 20:06:30 +00:00
valeski%netscape.com
dc75493b3e warning fix 1999-09-01 14:11:15 +00:00
warren%netscape.com
daec1b8fe3 Cleaning up dependency on nsIBuffer.h 1999-09-01 04:40:12 +00:00
warren%netscape.com
efb0c1cd5d Made NS_BASE_STREAM_WOULD_BLOCK a failure code (for JS). Reduced socket transport buffer size. Fixed ABBA deadlock when calling OnEmpty in pipe code (bug#12870). 1999-08-31 21:47:30 +00:00
norris%netscape.com
d8507f844e * clean up nsScriptSecurityManager
* remove nsJSSecurityManager
* save principals in nsIChannels and nsIDocuments
1999-08-29 21:58:42 +00:00
valeski%netscape.com
c52959b8f1 nsString2 to nsCString 1999-08-29 16:46:30 +00:00
valeski%netscape.com
0b30c81c11 change nsString2 to nsCString 1999-08-29 16:42:27 +00:00
valeski%netscape.com
639287b4ae added GetContentType functionality. Now the channel tries the mime service and uses it's own member when possible. 1999-08-29 14:14:30 +00:00
gagan%netscape.com
58d5877fdf Fixed tabs to spaces and misc leaks... 1999-08-27 12:38:06 +00:00
warren%netscape.com
136db06f40 Fix for linux bustage (different includes for some reason). 1999-08-27 11:03:12 +00:00
warren%netscape.com
b1c540e4a4 Ported to the new nsPipe2 implementation. 1999-08-27 10:33:37 +00:00
jevering%netscape.com
8dfa81c80e Finshed null reference fix. 1999-08-27 06:32:18 +00:00
jevering%netscape.com
49ec00b6b5 Free'd memory read fix. 1999-08-27 06:08:21 +00:00
rpotts%netscape.com
094c37e358 Fix for unix... nsIChannel needed to be fully defined... 1999-08-26 23:05:20 +00:00
rpotts%netscape.com
0085d83ab0 M9 BRANCH landing... 1999-08-26 22:45:55 +00:00
gagan%netscape.com
a5d6c9c5de Argh... missed a free. 1999-08-25 23:58:24 +00:00
gagan%netscape.com
54c84be4b4 Fix for #11204. 1999-08-25 23:27:58 +00:00
warren%netscape.com
fe52d530ae Added new nsIPipe/nsPipe2 stuff inside #ifdef NSPIPE2. 1999-08-24 21:47:23 +00:00
hshaw%netscape.com
6114a3c317 purging temporary NET_SOCKET_PROVIDER_BUILD ifdef, dougt checked in mac build support 1999-08-24 19:04:58 +00:00
dougt%netscape.com
a7dd519e15 Making nsNetModuleMgr use proxy.
Clean up nsNetModuleMgr API.
Change http to use new API.
1999-08-24 00:34:51 +00:00
gagan%netscape.com
eac40b7d91 We dont need this macro here now. Its available in nsCRT for all to use. 1999-08-23 08:30:55 +00:00
mccabe%netscape.com
a900e17559 Replace declarations of interface methods in implementation classes with xpidl-generated NS_DECL_NSIFOO.
Remainder of the netwerk portion of the NS_DECL_NSIFOO spam.
1999-08-22 23:52:07 +00:00
hshaw%netscape.com
a16de4ba9d allow selection of socket type using socket providers 1999-08-22 17:26:09 +00:00
mccabe%netscape.com
17cdc659d1 NS_DECL_NSIFOO spam for nsIRequest, nsIChannel, nsIStreamListener, nsIStreamObserver, all from netwerk/
convert manual interface method declarations in implementation class to NS_DECL_NSIFOO macro.
1999-08-22 13:26:18 +00:00
gagan%netscape.com
0c214adc91 Code style consistency cleanup. 1999-08-21 00:22:18 +00:00
tbogard%aol.net
57feff30c2 XPCOM Cleanup: Fixed Aggregation macros in nsAgg.h to do aggregation correctly. Fixed usages and implementation of aggregation using these macros through out the tree. 1999-08-19 05:36:30 +00:00
leaf%mozilla.org
e7d4319fdd backing out dougt 1999-08-19 02:35:39 +00:00
dougt%netscape.com
431a9eef50 Adding thread proxy support to Net Module Notification.
General cleanup
1999-08-18 09:32:26 +00:00
gagan%netscape.com
63d548333f backslashes in ..\.. cases fixed. Thanks bratell@lysator.liu.se 1999-08-13 05:20:45 +00:00
warren%netscape.com
d944d70a84 Fix for bug 7682: StringBundle can't load URLs from imap thread. 1999-08-13 00:43:48 +00:00
gagan%netscape.com
1581724dae Fixed bunch of M9 bugs for Necko. 1999-08-12 09:59:24 +00:00
valeski%netscape.com
551c3fdc95 added user agent language setter routine 1999-08-10 18:33:27 +00:00
rpotts%netscape.com
eabc748ec0 Implement nsIRequest::Cancel() for the SocketTransport. 1999-08-09 07:05:15 +00:00
morse%netscape.com
e3092f3888 cleaned up dialogs 1999-08-06 00:29:10 +00:00
rpotts%netscape.com
1a4d82c21f bug #10739. Reworking header APIs... I've removed nsIHeader.h. 1999-08-05 08:28:49 +00:00
mscott%netscape.com
d37e51242e bulletproof some NS_RELEASE's with NS_IF_RELEASE. 1999-08-04 21:23:26 +00:00
valeski%netscape.com
8cd7c54894 nsNetModRegEntry.cpp - fixed mem leak. nsStdURL.cpp - fixed port parsing bug 1999-08-04 21:20:48 +00:00
warren%netscape.com
529c0b2b71 Removed hack to export to netwerk/dist (used before landing necko). 1999-08-03 00:38:25 +00:00
warren%netscape.com
5e143d61d4 Removed nsCOMPtr breakage. 1999-07-31 07:30:49 +00:00
warren%netscape.com
07b963204e Added GetLoadGroup/SetLoadGroup to nsIChannel so that redirects can discover the group. 1999-07-31 06:53:12 +00:00
warren%netscape.com
38ba2d2fad Lots of cool logging code. 1999-07-31 06:28:31 +00:00
gagan%netscape.com
7226dc69b4 Fix MLK. Freeing up previous versions of mPath/mScheme 1999-07-31 00:15:49 +00:00
warren%netscape.com
ec14999c47 Added NS_ERROR_UNKNOWN_PROTOCOL, and changed dns error to NS_ERROR_UNKNOWN_HOST. 1999-07-30 04:17:23 +00:00
valeski%netscape.com
2c443202a5 crahser fix 10843 - bad host name was crashing the socket transport in error state 1999-07-30 02:36:52 +00:00
bruce%cybersight.com
e2e303a78d Build fix for aCC on HP-UX. Approved by leaf. 1999-07-29 04:21:42 +00:00
mscott%netscape.com
c0c1cc8e74 fix build breakage by including config.mak 1999-07-29 02:47:16 +00:00
mscott%netscape.com
203c991819 Fix build breakage...include config.mak 1999-07-29 02:35:45 +00:00
rpotts%netscape.com
02062599f9 Close the socket if an error occurred... 1999-07-28 11:08:18 +00:00
rpotts%netscape.com
3aed16e4b8 Changed OnStopRequest(...) to always file - regardless of the mStatus. This insures that the consumer will *always* receive an OnStopRequest(...) notification. 1999-07-28 11:07:39 +00:00
warren%netscape.com
c7b57f1e08 Fixed mismatched delete problem (purify). 1999-07-28 04:05:10 +00:00
gagan%netscape.com
ca73a1f56c More URL parsing updates for not so common cases. 1999-07-28 02:13:07 +00:00
gagan%netscape.com
f127b5bcec Fixed the URL parsing for http://foo:80 1999-07-27 21:28:05 +00:00
valeski%netscape.com
a176e19e98 fixing mem leak 1999-07-27 21:12:50 +00:00
rpotts%netscape.com
4c8f571a13 Added a temporary new define called USE_POLLABLE_EVENT which windows and unix both define... On the Mac, rather than using NSPR pollable events, a small timeout is set for PR_Poll(...) and new entry processing occurs after a timeout :-( 1999-07-27 09:21:07 +00:00
warren%netscape.com
0cf03128d0 Fixed tab-width 1999-07-27 08:46:27 +00:00
warren%netscape.com
d8715087fe Added logging. 1999-07-27 08:45:35 +00:00
warren%netscape.com
065cd2992d Fixed NewURI to not pass base URI when spec is absolute. 1999-07-27 08:45:20 +00:00
gagan%netscape.com
dc9fb63f38 -Fixed parsing to handle the mscott cases of-
mailbox://foo:25/user@netscape.com
	pop3://foo:110?check
-Fixed missing directory situations. (thanks Andreas)
-Removed the temporary hack for converting from ToNewCString to nsCRT::free'able
type. This removes the FMM errors on Bruce's log. No more mismatched freeing.


? diffs
Index: nsStdURL.cpp
===================================================================
RCS file: /cvsroot/mozilla/netwerk/base/src/nsStdURL.cpp,v
retrieving revision 1.5
diff -r1.5 nsStdURL.cpp
147,150c147
<     {
< 		//TODO
<         return NS_ERROR_FAILURE; // this should really be NS_ERROR_URL_PARSING
<     }
---
>         return NS_ERROR_MALFORMED_URI;
154c151
<     static const char delimiters[] = "/:@"; //this order is optimized.
---
>     static const char delimiters[] = "/:@?"; //this order is optimized.
157,493c154
<     if (brk)
<     {
<         switch (*brk)
<         {
<         case '/' :
<             // If the URL starts with a slash then everything is a path
<             if (brk == mSpec)
<             {
< 				ExtractString(mSpec, &mPath, 0, len);
<                 return NS_OK;
<             }
<             else // The first part is host, so its host/path
<             {
<                 ExtractString(mSpec, &mHost, 0, (brk - mSpec));
<                 ExtractString(mSpec, &mPath, (brk - mSpec), (len - (brk - mSpec)));
<                 return NS_OK;
<             }
<             break;
<         case ':' :
<             if (*(brk+1) == '/')
<             {
<                 ExtractString(mSpec, &mScheme, 0, (brk - mSpec));
<
<                 if (*(brk+2) == '/') // e.g. http://
<                 // If the first colon is followed by // then its definitely a spec
<                 {
<                     lastbrk = brk+3;
<                     brk = PL_strpbrk(lastbrk, delimiters);
<                     if (brk)
<                     {
<                         switch (*brk)
<                         {
<                             case '/' : // standard case- http://host/path
<                                 ExtractString(mSpec, &mHost,
< 								    (lastbrk - mSpec), (brk - lastbrk));
<                                 ExtractString(mSpec, &mPath,
< 								    (brk - mSpec), (len - (brk - mSpec)));
<                                 return NS_OK;
<                                 break;
<                             case ':' :
<                                 {
<                                     // It could be http://user:pass@host/path
< 								    // or http://host:port/path
<                                     // For the first case, there has to be an
< 								    // @ after this colon, so...
<                                     char* atSign = PL_strchr(brk, '@');
<                                     if (atSign)
<                                     {
<                                         ExtractString(mSpec, &mPreHost,
< 										    (lastbrk - mSpec), (atSign - lastbrk));
<                                         brk = PL_strpbrk(atSign+1, "/:");
<                                         if (brk) // http://user:pass@host:port/path or http://user:pass@host/path
<                                         {
<                                             ExtractString(mSpec, &mHost,
< 											    (atSign+1 - mSpec),
< 											    (brk - (atSign+1)));
<                                             if (*brk == '/')
<                                             {
<                                                 ExtractString(mSpec, &mPath,
< 												    (brk - mSpec),
< 												    len - (brk - mSpec));
<                                                 return NS_OK;
<                                             }
<                                             else // we have a port since (brk == ':')
<                                             {
<                                                 lastbrk = brk+1;
<                                                 brk = PL_strchr(lastbrk, '/');
<                                                 if (brk) // http://user:pass@host:port/path
<                                                 {
<                                                     mPort = ExtractPortFrom(mSpec, (lastbrk - mSpec), (brk-lastbrk));
<                                                     ExtractString(mSpec, &mPath, (brk-mSpec), len - (brk-mSpec));
<                                                     return NS_OK;
<                                                 }
<                                                 else // http://user:pass@host:port
<                                                 {
<                                                     mPort = ExtractPortFrom(mSpec, (lastbrk - mSpec), len - (lastbrk - mSpec));
<                                                     return NS_OK;
<                                                 }
<                                             }
<
<                                         }
<                                         else // its just http://user:pass@host
<                                         {
<                                             ExtractString(mSpec, &mHost,
< 											    (atSign+1 - mSpec),
< 											    len - (atSign+1 - mSpec));
<                                             return NS_OK;
<                                         }
<                                     }
<                                     else // definitely the port option, i.e. http://host:port/path
<                                     {
<                                         ExtractString(mSpec, &mHost,
< 										    (lastbrk-mSpec),
< 										    (brk-lastbrk));
<                                         lastbrk = brk+1;
<                                         brk = PL_strchr(lastbrk, '/');
<                                         if (brk)    // http://host:port/path
<                                         {
<                                             mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
<                                             ExtractString(mSpec, &mPath,
< 											    (brk-mSpec),
< 											    len - (brk-mSpec));
<                                             return NS_OK;
<                                         }
<                                         else        // http://host:port
<                                         {
<                                             mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),len - (lastbrk-mSpec));
<                                             return NS_OK;
<                                         }
<                                     }
<                                 }
<                                 break;
<                             case '@' :
<                                 // http://user@host...
<                                 {
<                                     ExtractString(mSpec, &mPreHost,
< 									    (lastbrk-mSpec), (brk-lastbrk));
<                                     lastbrk = brk+1;
<                                     brk = PL_strpbrk(lastbrk, ":/");
<                                     if (brk)
<                                     {
<                                         ExtractString(mSpec, &mHost,
< 										    (lastbrk-mSpec), (brk - lastbrk));
<                                         if (*brk == ':') // http://user@host:port...
<                                         {
<                                             lastbrk = brk+1;
<                                             brk = PL_strchr(lastbrk, '/');
<                                             if (brk)    // http://user@host:port/path
<                                             {
<                                                 mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
<                                                 ExtractString(mSpec, &mPath,
< 												    (brk-mSpec),
< 												    len - (brk-mSpec));
<                                                 return NS_OK;
<                                             }
<                                             else        // http://user@host:port
<                                             {
<                                                 mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),len - (lastbrk-mSpec));
<                                                 return NS_OK;
<                                             }
<
<                                         }
<                                         else // (*brk == '/') so no port just path i.e. http://user@host/path
<                                         {
<                                             ExtractString(mSpec, &mPath,
< 											    (brk - mSpec),
< 											    len - (brk - mSpec));
<                                             return NS_OK;
<                                         }
<                                     }
<                                     else // its just http://user@host
<                                     {
<                                         ExtractString(mSpec, &mHost,
< 										    (lastbrk+1 - mSpec), len - (lastbrk+1 - mSpec));
<                                         return NS_OK;
<                                     }
<
<                                 }
<                                 break;
<                             default: NS_POSTCONDITION(0, "This just can't be!");
<                                 break;
<                         }
<
<                     }
<                     else // everything else is a host, as in http://host
<                     {
<                         ExtractString(mSpec, &mHost,
< 						    (lastbrk - mSpec),
< 						    len - (lastbrk - mSpec));
<                         return NS_OK;
<                     }
<
<                 }
<                 else // This is a no // path alone case like file:/path, there is never a prehost/host in this case.
<                 {
<                     ExtractString(mSpec, &mPath, (brk-mSpec+1), len - (brk-mSpec+1));
<                     return NS_OK;
<                 }
<             }
<             else // scheme:host or host:port...
<             {
<                 lastbrk = brk+1;
<
<                 if ((*lastbrk >= '0') && (*lastbrk <= '9')) //host:port...
<                 {
<                     ExtractString(mSpec, &mHost, 0, (brk - mSpec));
<                     brk = PL_strpbrk(lastbrk, delimiters);
<                     if (brk)
<                     {
<                         switch (*brk)
<                         {
<                             case '/' : // The path, so its host:port/path
<                                 mPort = ExtractPortFrom(mSpec, lastbrk-mSpec, brk-lastbrk);
<                                 ExtractString(mSpec, &mPath, brk- mSpec, len - (brk-mSpec));
<                                 return NS_OK;
<                                 break;
<                             case ':' :
<                                 return NS_ERROR_FAILURE;//TODO NS_ERROR_URL_PARSING;
<                                 break;
<                             case '@' :
<                                 // This is a special case of user:pass@host... so
<                                 // Cleanout our earliar knowledge of host
<                                 ExtractString(mSpec, &mHost, -1, -1);
<
<                                 ExtractString(mSpec, &mPreHost, 0, (brk-mSpec));
<                                 lastbrk = brk+1;
<                                 brk = PL_strpbrk(lastbrk, ":/");
<                                 if (brk)
<                                 {
<                                     ExtractString(mSpec, &mHost,
< 									    (lastbrk-mSpec), (brk-lastbrk));
<                                     if (*brk == ':') // user:pass@host:port...
<                                     {
<                                         lastbrk = brk+1;
<                                         brk = PL_strchr(lastbrk, '/');
<                                         if (brk)    // user:pass@host:port/path
<                                         {
<                                             mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
<                                             ExtractString(mSpec, &mPath,
< 											    (brk-mSpec), len - (brk-mSpec));
<                                             return NS_OK;
<                                         }
<                                         else        // user:pass@host:port
<                                         {
<                                             mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),len - (lastbrk-mSpec));
<                                             return NS_OK;
<                                         }
<                                     }
<                                     else // (*brk == '/') so user:pass@host/path
<                                     {
<                                         ExtractString(mSpec, &mPath, (brk - mSpec), len - (brk - mSpec));
<                                         return NS_OK;
<                                     }
<                                 }
<                                 else // its user:pass@host so everthing else is just the host
<                                 {
<                                     ExtractString(mSpec, &mHost,
< 									    (lastbrk-mSpec), len - (lastbrk-mSpec));
<                                     return NS_OK;
<                                 }
<
<                                 break;
<                             default: NS_POSTCONDITION(0, "This just can't be!");
<                                 break;
<                         }
<                     }
<                     else // Everything else is just the port
<                     {
<                         mPort = ExtractPortFrom(mSpec, lastbrk-mSpec, len - (lastbrk-mSpec));
<                         return NS_OK;
<                     }
<                 }
<                 else // scheme:host...
<                 {
<                     ExtractString(mSpec, &mScheme, 0, (brk - mSpec));
<                     brk = PL_strpbrk(lastbrk, delimiters);
<                     if (brk)
<                     {
<                         switch (*brk)
<                         {
<                             case '/' : // The path, so its scheme:host/path
<                                 ExtractString(mSpec, &mHost, (lastbrk-mSpec), (brk-lastbrk));
<                                 ExtractString(mSpec, &mPath, (brk - mSpec), len - (brk - mSpec));
<                                 return NS_OK;
<                                 break;
<                             case '@' : // scheme:user@host...
<                                 ExtractString(mSpec, &mPreHost, (lastbrk-mSpec), (brk-lastbrk));
<                                 // TODO more here...
<                                 break;
<                             case ':' : // scheme:user:pass@host... or scheme:host:port...
<                                 /* TODO
<                                 if you find @ in the remaining string then // scheme:user:pass@host...
<                                 {
<
<
<                                 }
<                                 else // scheme:host:port
<                                 {
<                                     ExtractString(mSpec, &mHost, (lastbrk-mSpec), (brk-lastbrk));
<
<                                 }
<                                 */
<                                 break;
<                             default: NS_POSTCONDITION(0, "This just can't be!");
<                                 break;
<                         }
<                     }
<                     else // its just scheme:host
<                     {
<                         ExtractString(mSpec, &mHost, (lastbrk-mSpec), len - (lastbrk-mSpec));
<                         return NS_OK;
<                     }
<                 }
<             }
<             break;
<         case '@' :
<             //Everything before the @ is the prehost stuff
<             ExtractString(mSpec, &mPreHost, 0, brk-mSpec);
<             lastbrk = brk+1;
<             brk = PL_strpbrk(lastbrk, ":/");
<             if (brk)
<             {
<                 ExtractString(mSpec, &mHost, (lastbrk-mSpec), (brk-lastbrk));
<                 if (*brk == ':') // user@host:port...
<                 {
<                     lastbrk = brk+1;
<                     brk = PL_strchr(lastbrk, '/');
<                     if (brk)    // user@host:port/path
<                     {
<                         mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
<                         ExtractString(mSpec, &mPath, (brk-mSpec), len - (brk-mSpec));
<                         return NS_OK;
<                     }
<                     else        // user@host:port
<                     {
<                         mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),len - (lastbrk-mSpec));
<                         return NS_OK;
<                     }
<                 }
<                 else // (*brk == '/') so user@host/path
<                 {
<                     ExtractString(mSpec, &mPath, (brk - mSpec), len - (brk - mSpec));
<                     return NS_OK;
<                 }
<             }
<             else // its user@host so everything else is just the host
<             {
<                 ExtractString(mSpec, &mHost, (lastbrk-mSpec), (len - (lastbrk-mSpec)));
<                 return NS_OK;
<             }
<             break;
<         default:
<             NS_ASSERTION(0, "This just can't be!");
<             break;
<         }
<     }
<     else // everything is a host
---
>     if (!brk) // everything is a host
495a157
> 		return NS_OK;
496a159,501
> 	switch (*brk)
> 	{
> 	case '/' :
> 	case '?' :
> 		// If the URL starts with a slash then everything is a path
> 		if (brk == mSpec)
> 		{
> 			ExtractString(mSpec, &mPath, 0, len);
> 			return NS_OK;
> 		}
> 		else // The first part is host, so its host/path
> 		{
> 			ExtractString(mSpec, &mHost, 0, (brk - mSpec));
> 			ExtractString(mSpec, &mPath, (brk - mSpec), (len - (brk - mSpec)));
> 			return NS_OK;
> 		}
> 		break;
> 	case ':' :
> 		if (*(brk+1) == '/')
> 		{
> 			ExtractString(mSpec, &mScheme, 0, (brk - mSpec));
>
> 			if (*(brk+2) == '/') // e.g. http://
> 			// If the first colon is followed by // then its definitely a spec
> 			{
> 				lastbrk = brk+3;
> 				brk = PL_strpbrk(lastbrk, delimiters);
> 				if (!brk) // everything else is a host, as in http://host
> 				{
> 					ExtractString(mSpec, &mHost,
> 						(lastbrk - mSpec),
> 						len - (lastbrk - mSpec));
> 					return NS_OK;
> 				}
> 				switch (*brk)
> 				{
> 					case '/' : // standard case- http://host/path
> 					case '?' : // missing path cases
> 						ExtractString(mSpec, &mHost,
> 							(lastbrk - mSpec), (brk - lastbrk));
> 						ExtractString(mSpec, &mPath,
> 							(brk - mSpec), (len - (brk - mSpec)));
> 						return NS_OK;
> 						break;
> 					case ':' : // http://user:... or http://host:...
> 					{
> // It could be http://user:pass@host/path
> // or http://host:port/path we find that by checking further...
> char* nextbrk = PL_strpbrk(brk+1, delimiters);
> if (!nextbrk) // http://host:port
> {
> 	ExtractString(mSpec, &mHost,
> 		(lastbrk-mSpec), (brk-lastbrk));
> 	mPort = ExtractPortFrom(mSpec,
> 		(lastbrk-mSpec), len - (lastbrk-mSpec));
> 	return NS_OK;
> }
> switch (*nextbrk)
> {
> 	case '/': // http://host:port/path
> 	case '?': // http://host:port?path
> 		ExtractString(mSpec, &mHost,
> 			(lastbrk-mSpec), (brk-lastbrk));
> 		mPort = ExtractPortFrom(mSpec, (brk-mSpec+1),(nextbrk-brk-1));
> 		ExtractString(mSpec, &mPath,
> 				(nextbrk-mSpec), len - (nextbrk-mSpec));
> 		return NS_OK;
> 		break;
> 	case '@': // http://user:pass@host...
> 		ExtractString(mSpec, &mPreHost,
> 			(lastbrk - mSpec), (nextbrk - lastbrk));
> 		brk = PL_strpbrk(nextbrk+1, delimiters);
> 		if (!brk) // its just http://user:pass@host
> 		{
> 			ExtractString(mSpec, &mHost,
> 				(nextbrk+1 - mSpec),
> 				len - (nextbrk+1 - mSpec));
> 			return NS_OK;
> 		}
>
> 		ExtractString(mSpec, &mHost,
> 			(nextbrk+1 - mSpec), brk - (nextbrk+1));
>
> 		switch (*brk)
> 		{
> 		case '/': // http://user:pass@host/path
> 		case '?':
> 			ExtractString(mSpec, &mPath,
> 				(nextbrk+1 - mSpec),
> 				len - (nextbrk+1 - mSpec));
> 			return NS_OK;
> 			break;
> 		case ':': // http://user:pass@host:port...
> 			lastbrk = brk;
> 			brk = PL_strpbrk(lastbrk+1, "/?");
> 			if (brk)    // http://user:pass@host:port/path
> 			{
> 				mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
> 				ExtractString(mSpec, &mPath, (brk-mSpec), len - (brk-mSpec));
> 				return NS_OK;
> 			}
> 			else        // http://user:pass@host:port
> 			{
> 				mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),
> 					len - (lastbrk-mSpec));
> 				return NS_OK;
> 			}
> 			break;
> 		default: NS_POSTCONDITION(0, "This just can't be!");
> 			break;
> 		}
> 		break;
> 	case ':': // three colons!
> 		return NS_ERROR_MALFORMED_URI;
> 		break;
> 	default: NS_POSTCONDITION(0, "This just can't be!");
> 		break;
> }
> 						}
> 						break;
> 					case '@' : // http://user@host...
> 						{
> 							ExtractString(mSpec, &mPreHost,
> 								(lastbrk-mSpec), (brk-lastbrk));
> 							lastbrk = brk+1;
> 							brk = PL_strpbrk(lastbrk, delimiters);
> 							if (!brk) // its just http://user@host
> 							{
> 								ExtractString(mSpec, &mHost,
> 									(lastbrk+1 - mSpec),
> 									len - (lastbrk+1 - mSpec));
> 								return NS_OK;
> 							}
> 							ExtractString(mSpec, &mHost,
> 								(lastbrk-mSpec), (brk - lastbrk));
> 							switch (*brk)
> 							{
> 								case ':' : // http://user@host:port...
> 									lastbrk = brk+1;
> 									brk = PL_strpbrk(lastbrk, "/?");
> 									if (brk)    // http://user@host:port/path
> 									{
> 										mPort = ExtractPortFrom(mSpec,
> 											(lastbrk-mSpec),(brk-lastbrk));
> 										ExtractString(mSpec, &mPath,
> 											(brk-mSpec),
> 											len - (brk-mSpec));
> 										return NS_OK;
> 									}
> 									else        // http://user@host:port
> 									{
> 										mPort = ExtractPortFrom(mSpec,
> 											(lastbrk-mSpec),
> 											len - (lastbrk-mSpec));
> 										return NS_OK;
> 									}
> 									break;
> 								case '/' : // http://user@host/path
> 								case '?' : // http://user@host?path
> 									ExtractString(mSpec, &mPath,
> 										(brk - mSpec),
> 										len - (brk - mSpec));
> 									return NS_OK;
> 									break;
> 								case '@' :
> 									return NS_ERROR_MALFORMED_URI;
> 								default : NS_POSTCONDITION(0,
> 									"This just can't be!");
> 									break;
> 							}
> 						}
> 						break;
> 					default: NS_POSTCONDITION(0, "This just can't be!");
> 						break;
> 				}
> 			}
> 			else // This is a no // path alone case like file:/path,
> 				// there is never a prehost/host in this case.
> 			{
> 				ExtractString(mSpec, &mPath, (brk-mSpec+1),
> 					len - (brk-mSpec+1));
> 				return NS_OK;
> 			}
> 		}
> 		else // scheme:host or host:port...
> 		{
> 			lastbrk = brk+1;
>
> 			if ((*lastbrk >= '0') && (*lastbrk <= '9')) //host:port...
> 			{
> 				ExtractString(mSpec, &mHost, 0, (brk - mSpec));
> 				brk = PL_strpbrk(lastbrk, delimiters);
> 				if (!brk) // Everything else is just the port
> 				{
> 					mPort = ExtractPortFrom(mSpec, lastbrk-mSpec,
> 						len - (lastbrk-mSpec));
> 					return NS_OK;
> 				}
> 				switch (*brk)
> 				{
> 					case '/' : // The path, so its host:port/path
> 					case '?' : // The path, so its host:port?path
> 						mPort = ExtractPortFrom(mSpec, lastbrk-mSpec,
> 							brk-lastbrk);
> 						ExtractString(mSpec, &mPath, brk- mSpec,
> 							len - (brk-mSpec));
> 						return NS_OK;
> 						break;
> 					case ':' :
> 						return NS_ERROR_MALFORMED_URI;
> 						break;
> 					case '@' :
> 						// This is a special case of user:pass@host... so
> 						// Cleanout our earliar knowledge of host
> 						ExtractString(mSpec, &mHost, -1, -1);
>
> 						ExtractString(mSpec, &mPreHost, 0, (brk-mSpec));
> 						lastbrk = brk+1;
> 						brk = PL_strpbrk(lastbrk, ":/");
> 					// its user:pass@host so everthing else is just the host
> 						if (!brk)
> 						{
> 							ExtractString(mSpec, &mHost,
> 								(lastbrk-mSpec), len - (lastbrk-mSpec));
> 							return NS_OK;
> 						}
> 						ExtractString(mSpec, &mHost,
> 							(lastbrk-mSpec), (brk-lastbrk));
> 						if (*brk == ':') // user:pass@host:port...
> 						{
> 							lastbrk = brk+1;
> 							brk = PL_strpbrk(lastbrk, "/?");
> 							if (brk)    // user:pass@host:port/path
> 							{
> 								mPort = ExtractPortFrom(mSpec,
> 									(lastbrk-mSpec),(brk-lastbrk));
> 								ExtractString(mSpec, &mPath,
> 									(brk-mSpec), len - (brk-mSpec));
> 								return NS_OK;
> 							}
> 							else        // user:pass@host:port
> 							{
> 								mPort = ExtractPortFrom(mSpec,
> 									(lastbrk-mSpec),len - (lastbrk-mSpec));
> 								return NS_OK;
> 							}
> 						}
> 						else // (*brk == '/') so user:pass@host/path
> 						{
> 							ExtractString(mSpec, &mPath, (brk - mSpec),
> 								len - (brk - mSpec));
> 							return NS_OK;
> 						}
> 						break;
> 					default: NS_POSTCONDITION(0, "This just can't be!");
> 						break;
> 				}
> 			}
> 			else // scheme:host...
> 			{
> 				ExtractString(mSpec, &mScheme, 0, (brk - mSpec));
> 				brk = PL_strpbrk(lastbrk, delimiters);
> 				if (!brk) // its just scheme:host
> 				{
> 					ExtractString(mSpec, &mHost, (lastbrk-mSpec),
> 						len - (lastbrk-mSpec));
> 					return NS_OK;
> 				}
> 				switch (*brk)
> 				{
> 					case '/' : // The path, so its scheme:host/path
> 					case '?' : // The path, so its scheme:host?path
> 						ExtractString(mSpec, &mHost, (lastbrk-mSpec),
> 							(brk-lastbrk));
> 						ExtractString(mSpec, &mPath, (brk - mSpec),
> 							len - (brk - mSpec));
> 						return NS_OK;
> 						break;
> 					case '@' : // scheme:user@host...
> 						ExtractString(mSpec, &mPreHost, (lastbrk-mSpec),
> 							(brk-lastbrk));
> 						// TODO more here...
> 						break;
> 					case ':' : // scheme:user:pass@host...or scheme:host:port...
> 						/* TODO
> 						if you find @ in the remaining string
> 						then // scheme:user:pass@host...
> 						{
>
>
> 						}
> 						else // scheme:host:port
> 						{
> 							ExtractString(mSpec, &mHost, (lastbrk-mSpec),
> 								(brk-lastbrk));
> 						}
> 						*/
> 						break;
> 					default: NS_POSTCONDITION(0, "This just can't be!");
> 						break;
> 				}
> 			}
> 		}
> 		break;
> 	case '@' :
> 		//Everything before the @ is the prehost stuff
> 		ExtractString(mSpec, &mPreHost, 0, brk-mSpec);
> 		lastbrk = brk+1;
> 		brk = PL_strpbrk(lastbrk, ":/");
> 		if (!brk) // its user@host so everything else is just the host
> 		{
> 			ExtractString(mSpec, &mHost, (lastbrk-mSpec),
> 				(len - (lastbrk-mSpec)));
> 			return NS_OK;
> 		}
> 		ExtractString(mSpec, &mHost, (lastbrk-mSpec), (brk-lastbrk));
> 		if (*brk == ':') // user@host:port...
> 		{
> 			lastbrk = brk+1;
> 			brk = PL_strpbrk(lastbrk, "/?");
> 			if (brk)    // user@host:port/path
> 			{
> 				mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),(brk-lastbrk));
> 				ExtractString(mSpec, &mPath, (brk-mSpec), len - (brk-mSpec));
> 				return NS_OK;
> 			}
> 			else        // user@host:port
> 			{
> 				mPort = ExtractPortFrom(mSpec, (lastbrk-mSpec),
> 					len - (lastbrk-mSpec));
> 				return NS_OK;
> 			}
> 		}
> 		else // (*brk == '/') so user@host/path
> 		{
> 			ExtractString(mSpec, &mPath, (brk - mSpec), len - (brk - mSpec));
> 			return NS_OK;
> 		}
> 		break;
> 	default:
> 		NS_ASSERTION(0, "This just can't be!");
> 		break;
> 	}
578,580c583
<     {
<         return NS_ERROR_OUT_OF_MEMORY;
<     }
---
>         return returnValue; // ERROR!
620,626c623
< 	// TODO- Fix this. Hack to create tmp only becuz nsString can't
< 	// give us a PR_Malloc (nsCRT/nsAllocator) string
< 	char* tmp = dir.ToNewCString();
< 	if (!tmp)
< 		return NS_ERROR_OUT_OF_MEMORY;
<     mDirectory = nsCRT::strdup(tmp);
< 	delete[] tmp;
---
>     mDirectory = dir.ToNewCString();
677d673
<     nsresult status = NS_ERROR_FAILURE;
782,783c778,782
<     NS_ASSERTION(file, "This can't be! ParsePath called without a /Path");
<     if (!file) return NS_OK;
---
>     if (!file)
> 	{
> 		// Treat the whole mPath as file -- this could still have ?, # etc.
> 		file = mPath;
> 	}
788a788,790
> 	else
> 		DupString(&mDirectory, "/");
>
795,819c797
<     if (brk)
<     {
<         ExtractString(file, &mFileName, 1 /* skip the leading / */, (brk-file-1));
<         //Keep pulling out other pieces...
<         while (brk)
<         {
<             char* lastbrk = brk;
<             brk = PL_strpbrk(lastbrk+1, delimiters);
<             switch (*lastbrk)
<             {
<                 case ';' : /*
<                            ExtractString(lastbrk, &mParam, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
<                            */
<                     break;
<                 case '?' : ExtractString(lastbrk, &mQuery, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
<                     break;
<                 case '#' : ExtractString(lastbrk, &mRef, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
<                     break;
<                 default:
<                     NS_ASSERTION(0, "This just can't be!");
<                     break;
<             }
<         }
<     }
<     else // Everything in the file is just the filename
---
>     if (!brk) // Everything in the file is just the filename
822a801,821
> 	ExtractString(file, &mFileName, 1 /* skip the leading / */, (brk-file-1));
> 	//Keep pulling out other pieces...
> 	while (brk)
> 	{
> 		char* lastbrk = brk;
> 		brk = PL_strpbrk(lastbrk+1, delimiters);
> 		switch (*lastbrk)
> 		{
> 			case ';' : /*
> 					   ExtractString(lastbrk, &mParam, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
> 					   */
> 				break;
> 			case '?' : ExtractString(lastbrk, &mQuery, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
> 				break;
> 			case '#' : ExtractString(lastbrk, &mRef, 1, (brk ? (brk-lastbrk-1) : (len - (lastbrk-file) -1)));
> 				break;
> 			default:
> 				NS_ASSERTION(0, "This just can't be!");
> 				break;
> 		}
> 	}
912,915c911
< 	// TODO fix when nsString changes
< 	char* tempDirFile = temp.ToNewCString();
< 	*o_DirFile = nsCRT::strdup(tempDirFile);
< 	delete[] tempDirFile;
---
> 	*o_DirFile = temp.ToNewCString();
1999-07-27 07:40:38 +00:00
gagan%netscape.com
0b54a9d025 Necko only. Added a missing trailing newline. 1999-07-26 22:44:22 +00:00
ducarroz%netscape.com
43cdf18964 First Checked In. 1999-07-24 20:50:35 +00:00
gordon%netscape.com
de06f1d4be File Removed. 1999-07-23 19:39:04 +00:00
valeski%netscape.com
f3f12e6a64 necko only - added temporary user agent string creation code 1999-07-23 16:35:53 +00:00
valeski%netscape.com
c7f0110854 necko only - fixed some miss-matched memory deallocations, and pulled an extraneous addref/release combo 1999-07-23 16:35:13 +00:00
mscott%netscape.com
95219aea51 export nsIStreamConverter2.idl 1999-07-23 05:50:32 +00:00
mscott%netscape.com
912123a982 generate header file for nsIStreamConverter2.idl 1999-07-23 05:49:07 +00:00
mscott%netscape.com
d37058008e this used to be mailnews\mime\public\nsIStreamConverter.idl but it needs to be moved out of mailnews as it is generic
and not specific to mailnews. The final resting place for this file will be netwerk\streamcnvts\public but that
directory isn't buildable yet so I'm moving it here for safe keeping. The name (the 2 part) is lame but it conflicted
with a file Jud is addding to streamconv (nsIStreamConverter). Don't worry..eventually the two interfaces
are going to be merged into one.
1999-07-23 05:48:27 +00:00
gagan%netscape.com
ac23409abc Replaced nsStandardUrl with nsStdURL. 1999-07-22 21:19:15 +00:00
gagan%netscape.com
b44058b222 Changes for the standard URL parsing. Added SetRelativePath. Cleaned up the deletions (all thru nsCRT now) Added functionality for Query and Ref portions of the Path. Added DirFile function to nsIURL to allow just Directory and the Filename. Misc. cleanups as well. 1999-07-22 21:14:51 +00:00
valeski%netscape.com
7126bb1563 added notification progids 1999-07-20 21:54:40 +00:00
warren%netscape.com
1dd4c2627a Fixed query/ref problem. 1999-07-20 08:46:35 +00:00
warren%netscape.com
bf8423a769 Changed around load group insertion/removal to happen on mozilla thread. 1999-07-20 08:46:33 +00:00
warren%netscape.com
134fa48807 Backed out Gagan's nsStdURL changes. 1999-07-17 01:32:48 +00:00
jdunn%netscape.com
3a1390d2ca include nsILoadGroup.h before it is referenced by nsCOMPtr 1999-07-16 22:20:24 +00:00
jdunn%netscape.com
471abae47d declare nsINetModRegEntry public (it is assumed private if not specified) 1999-07-16 22:19:38 +00:00
warren%netscape.com
84bd74a4fd Big changes for Necko load groups. Things are much happier now. Now images work (on pages, but not in chrome). 1999-07-16 11:14:36 +00:00
gagan%netscape.com
7703e6769b Removed obsolete files. 1999-07-16 02:33:44 +00:00
gagan%netscape.com
a552a0dd21 Switching to nsStdURL from nsStandardUrl. 1999-07-16 02:32:47 +00:00
warren%netscape.com
da524b4bb1 Removed. Replaced with file: protocol stuff. 1999-07-15 17:45:08 +00:00
rpotts%netscape.com
fa8e9138bc random changes... NECOK only 1999-07-13 20:43:49 +00:00
rpotts%netscape.com
07d24e787b Added support for GetQuery(). NECKO only. 1999-07-13 20:43:22 +00:00