22 Commits

Author SHA1 Message Date
alecf%netscape.com
f5cd7d93da fix for bug 189528 - do on-demand decompression of items in a .jar file
instead of allocating all the data into one big buffer, keep a small input buffer around and decompress directly into a client's read buffer..
r=dougt, sr=darin


git-svn-id: svn://10.0.0.236/trunk@139458 18797224-902f-48f8-a5cc-f745e15eee43
2003-03-14 18:59:51 +00:00
darin%netscape.com
979608deea fixes bug 191227 "file uploads hang (especially w/ slower connections or
slower servers)" r=dougt sr=bz a=dbaron


git-svn-id: svn://10.0.0.236/trunk@137175 18797224-902f-48f8-a5cc-f745e15eee43
2003-01-31 02:00:45 +00:00
dbaron%dbaron.org
e071c7ff2a Bug 178643: Remove uses of NS_INIT_ISUPPORTS, since it is no longer needed. r=timeless sr=jag
git-svn-id: svn://10.0.0.236/trunk@136017 18797224-902f-48f8-a5cc-f745e15eee43
2003-01-08 22:05:52 +00:00
dougt%netscape.com
e289284076 166917. Clean up xpcom SDK includes. r=rpotts@netscape.com, sr=alecf@netscape.com, a=rjesup@wgate.com
git-svn-id: svn://10.0.0.236/trunk@129050 18797224-902f-48f8-a5cc-f745e15eee43
2002-09-07 17:13:19 +00:00
darin%netscape.com
3872488d18 b=99165 Freeze nsIInputStream nsIOutputStream (not yet frozen... but close)
r=dougt sr=shaver a=asa


git-svn-id: svn://10.0.0.236/trunk@116359 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-12 00:59:06 +00:00
dp%netscape.com
e08908028c bug 116191 Making nsZipItem a member of nsJarInputStream rather than a
pointer. Saves a 16 byte allocation on per jar file read. r=darin, sr=dveditz


git-svn-id: svn://10.0.0.236/trunk@110962 18797224-902f-48f8-a5cc-f745e15eee43
2001-12-21 05:57:39 +00:00
brendan%mozilla.org
6abf5e7f73 Bit checkin for bug 68045, r/sr=waterson&shaver, second attempt. It all works
for me on optimized and debug gcc2.96, rh7.1.

- Better failure codes from nsXULPrototypeScript::Deserialize.

- Call nsXULDocument::AbortFastLoads after nsXULPrototypeScript::Serialize
  failure, instead of just nulling the FastLoad service's output stream.

- Expose nsXULDocument::AbortFastLoads via nsIXULPrototypeCache, for use from
  nsChromeProtocolHandler.cpp.  AbortFastLoads flushes the XUL cache now, for
  good measure.

- The needless "Current" adjective in nsIFastLoadService attribute and method
  names is no more.

- Add a do_GetFastLoadService() helper, to use CID instead of contractid, and
  to let the compiler consolidate the static inline CID.

- Add "nglayout.debug.checksum_xul_fastload_file" pref so people can do without
  the checksum verification step when reading a FastLoad file.

- Verify the FastLoad file checksum, by default.  Also, cache it in the FastLoad
  service so we don't recompute it when re-opening the FastLoad file as mailnews
  and other top-levels start up.  Fill the checksum cache in EndFastLoad, when
  the last pseudo-concurrent top-level finishes loading.

  My hope to compute the checksum while writing the FastLoad file ran afoul of
  misordered writes.  The old code to checksum the in-memory nsFastLoadHeader
  also was broken on little endian platforms.  Now all checksumming is done via
  a separate read pass over the complete file, save for the header's checksum
  field, which is summed as if it contained zero.

- Track and check FastLoad file dependencies.  This required groveling with a
  bunch of Necko interfaces in nsChromeProtocolHandler::NewChannel -- read it
  and weep.  Dependency checking, as well as checksum access and computation,
  use better-factored nsIFastLoad{File,Read,Write}Control interfaces.

- nsBufferedStream::Seek wasn't flushing the buffer when seeking backward
  within the buffer, but it must, because mCursor bounds the amount to write
  if the buffer contains the end of file.

- Add an unbufferedStream readonly attribute to nsIStreamBufferAccess, so we
  don't have to screw around with the bufferying layer when checksumming. Also
  implement nsIStreamBufferAccess in nsBufferedOutputStream.

- nsISeekableOutputStream was bogus, based on a bad state I had put the
  nsBufferedOutputStream code in on its way from being completely broken when
  you seek backwards outside of the buffer.  Removing this interface required
  using nsIFastLoadFileIO in nsFastLoadFileWriter, and it also required careful
  ordering of Close calls (the Reader must close after the Writer or Updater,
  so that the Reader's underlying, unbuffered input stream can be read by
  nsFastLoadFileWriter::Close to compute the checksum.

- Miscellaneous tab/indentation, comment typo, bracing, if( => if ( style,
  nsnull vs. 0, useless variable elimination, tortured control flow,
  AutoString instead of String, and gratuitous ; after nsISupportsUtils.h
  macro call cleanups.


git-svn-id: svn://10.0.0.236/trunk@101544 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-21 20:51:34 +00:00
blizzard%redhat.com
ac9d1a4c2e Back out brendan's checkin to try and get linux starting up again.
git-svn-id: svn://10.0.0.236/trunk@101334 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-17 19:45:11 +00:00
brendan%mozilla.org
cad980f881 - Better failure codes from nsXULPrototypeScript::Deserialize.
- Call nsXULDocument::AbortFastLoads after nsXULPrototypeScript::Serialize
  failure, instead of just nulling the FastLoad service's output stream.

- Expose nsXULDocument::AbortFastLoads via nsIXULPrototypeCache, for use from
  nsChromeProtocolHandler.cpp.  AbortFastLoads flushes the XUL cache now, for
  good measure.

- The needless "Current" adjective in nsIFastLoadService attribute and method
  names is no more.

- Add a do_GetFastLoadService() helper, to use CID instead of contractid, and
  to let the compiler consolidate the static inline CID.

- Add "nglayout.debug.checksum_xul_fastload_file" pref so people can do without
  the checksum verification step when reading a FastLoad file.

- Verify the FastLoad file checksum, by default.  Also, cache it in the FastLoad
  service so we don't recompute it when re-opening the FastLoad file as mailnews
  and other top-levels start up.  Fill the checksum cache in EndFastLoad, when
  the last pseudo-concurrent top-level finishes loading.

  My hope to compute the checksum while writing the FastLoad file ran afoul of
  misordered writes.  The old code to checksum the in-memory nsFastLoadHeader
  also was broken on little endian platforms.  Now all checksumming is done via
  a separate read pass over the complete file, save for the header's checksum
  field, which is summed as if it contained zero.

- Track and check FastLoad file dependencies.  This required groveling with a
  bunch of Necko interfaces in nsChromeProtocolHandler::NewChannel -- read it
  and weep.  Dependency checking, as well as checksum access and computation,
  use better-factored nsIFastLoad{File,Read,Write}Control interfaces.

- nsBufferedStream::Seek wasn't flushing the buffer when seeking backward
  within the buffer, but it must, because mCursor bounds the amount to write
  if the buffer contains the end of file.

- Add an unbufferedStream readonly attribute to nsIStreamBufferAccess, so we
  don't have to screw around with the bufferying layer when checksumming. Also
  implement nsIStreamBufferAccess in nsBufferedOutputStream.

- nsISeekableOutputStream was bogus, based on a bad state I had put the
  nsBufferedOutputStream code in on its way from being completely broken when
  you seek backwards outside of the buffer.  Removing this interface required
  using nsIFastLoadFileIO in nsFastLoadFileWriter, and it also required careful
  ordering of Close calls (the Writer or Updater must close after the Reader,
  so that the Reader's underlying, unbuffered input stream can be read by
  nsFastLoadFileWriter::Close to compute the checksum.

- Miscellaneous tab/indentation, comment typo, bracing, if( => if ( style,
  nsnull vs. 0, useless variable elimination, tortured control flow,
  AutoString instead of String, and gratuitous ; after nsISupportsUtils.h
  macro call cleanups.


git-svn-id: svn://10.0.0.236/trunk@101289 18797224-902f-48f8-a5cc-f745e15eee43
2001-08-17 09:52:55 +00:00
dveditz%netscape.com
efbf1b32a6 Fix 72551 speed up zip archive opening. r=ssu,sr=waterson
git-svn-id: svn://10.0.0.236/trunk@91107 18797224-902f-48f8-a5cc-f745e15eee43
2001-04-03 06:35:13 +00:00
dougt%netscape.com
a48b8d1bf4 Implementing ReadSegments. r/sr=darin@netscape.com
git-svn-id: svn://10.0.0.236/trunk@90767 18797224-902f-48f8-a5cc-f745e15eee43
2001-03-29 07:21:43 +00:00
darin%netscape.com
73495dffa0 Bug 62566. nsIChannel::AsyncWrite interface revision and related cleanup.
r=dougt@netcape.com, sr=mscott@netscape.com.


git-svn-id: svn://10.0.0.236/trunk@85390 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-23 22:10:34 +00:00
warren%netscape.com
a8b9664a8c Bug 47207. Backing out logging/PRINTF changes until we can fix stopwatch.h, introduce double parens, etc.
git-svn-id: svn://10.0.0.236/trunk@81967 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-28 22:17:53 +00:00
warren%netscape.com
c6b67eceeb Bug 47207. Changing printf to PRINTF to use new logging facility. r=valeski,sr=waterson
git-svn-id: svn://10.0.0.236/trunk@81885 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-27 22:43:51 +00:00
warren%netscape.com
f29b00bbe4 Bug 46777. Redesigned stream interfaces to allows stream observers to be decoupled from pipe implementation. Needed for embedding to fix 'spin' problem. r=rpotts,valeski,ruslan
git-svn-id: svn://10.0.0.236/trunk@76875 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-22 07:03:33 +00:00
mstoltz%netscape.com
9e2ab39e7d Fixing 40159 and 44822, both [nsbeta2+] regressions on signed scripts. r=sgehani
git-svn-id: svn://10.0.0.236/trunk@74078 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-12 03:10:33 +00:00
mstoltz%netscape.com
6477be8ebe Fixed crash when calling nsJARInputStream from nsJARChannel.
git-svn-id: svn://10.0.0.236/trunk@65235 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-05 00:12:20 +00:00
warren%netscape.com
fe40326e73 Fixing bugs in jar input streams for jar: protocol.
git-svn-id: svn://10.0.0.236/trunk@64584 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-30 07:41:37 +00:00
mstoltz%netscape.com
4ed4e15d17 Crasher fixes and optimizations to jar signature verification. bug=7270 r=norris
git-svn-id: svn://10.0.0.236/trunk@60679 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-14 01:57:01 +00:00
mstoltz%netscape.com
cbd5ead858 Implementation of JAR manifest parser, part of signature verification for signed scripts. bug=7270 r=norris
git-svn-id: svn://10.0.0.236/trunk@59132 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-29 00:03:57 +00:00
mstoltz%netscape.com
fc96225344 Created helper class nsZipRead to hold read state information. That way
one nsJAR can support multiple input streams. r=norris


git-svn-id: svn://10.0.0.236/trunk@52616 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-02 23:46:09 +00:00
mstoltz%netscape.com
ea05167e43 Added GetInputStream function to nsJAR in order to extract files into memory rather than to disk. Created nsJARInputStream to carry this data. Most of the code for this change went into nsZipArchive, which now handles either file output or output to memory. bug=16077 r=dveditz
git-svn-id: svn://10.0.0.236/trunk@51864 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-26 19:43:26 +00:00