diff options
author | Moonchild <moonchild@palemoon.org> | 2020-11-13 13:57:41 +0000 |
---|---|---|
committer | Moonchild <moonchild@palemoon.org> | 2020-11-13 15:57:56 +0000 |
commit | 870fd86e13fc95e8cf3165a134767c56d58b8987 (patch) | |
tree | 993b0f959316f545147a8ee60bea546cbc4aad68 /modules/libjar | |
parent | 13f505539c5c0deff72cc1c007eaa9be1979d294 (diff) | |
download | UXP-870fd86e13fc95e8cf3165a134767c56d58b8987.tar UXP-870fd86e13fc95e8cf3165a134767c56d58b8987.tar.gz UXP-870fd86e13fc95e8cf3165a134767c56d58b8987.tar.lz UXP-870fd86e13fc95e8cf3165a134767c56d58b8987.tar.xz UXP-870fd86e13fc95e8cf3165a134767c56d58b8987.zip |
[libjar] Fix inflation logic.
This has been broken for 11 years. About time it's fixed.
Tag #1683
Diffstat (limited to 'modules/libjar')
-rw-r--r-- | modules/libjar/nsJARInputStream.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/modules/libjar/nsJARInputStream.cpp b/modules/libjar/nsJARInputStream.cpp index 6993dd578..086c21ab4 100644 --- a/modules/libjar/nsJARInputStream.cpp +++ b/modules/libjar/nsJARInputStream.cpp @@ -195,7 +195,7 @@ MOZ_WIN_MEM_TRY_BEGIN return ReadDirectory(aBuffer, aCount, aBytesRead); case MODE_INFLATE: - if (mFd) { + if (mZs.total_out < mOutSize) { rv = ContinueInflate(aBuffer, aCount, aBytesRead); } // be aggressive about releasing the file! |