diff options
author | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2015-06-09 16:04:24 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@theqtcompany.com> | 2015-06-10 08:15:38 +0000 |
commit | 4677d362982a38c6e2aabb667e33aaa7f921f018 (patch) | |
tree | fe3b676288f05a87cdbb53a170e815427e3d9380 /src/libs/7zip/win/CPP/Common/StdInStream.cpp | |
parent | 22ec6aa53e44069c03c7baf94881949c7a4facff (diff) |
Update source tree with version 9.38.beta of LZMA SDK.
- Remove unused files.
- Split in .pri files.
- Add HEADERS section.
- Adjust lib7z_facade.
Change-Id: I31e7bafbfe1a9346364bd58c391601955f98ad3a
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Diffstat (limited to 'src/libs/7zip/win/CPP/Common/StdInStream.cpp')
-rw-r--r-- | src/libs/7zip/win/CPP/Common/StdInStream.cpp | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/src/libs/7zip/win/CPP/Common/StdInStream.cpp b/src/libs/7zip/win/CPP/Common/StdInStream.cpp deleted file mode 100644 index f3dcb85f5..000000000 --- a/src/libs/7zip/win/CPP/Common/StdInStream.cpp +++ /dev/null @@ -1,107 +0,0 @@ -// Common/StdInStream.cpp - -#include "StdAfx.h" - -#include <tchar.h> - -#include "StdInStream.h" -#include "StringConvert.h" -#include "UTFConvert.h" - -#ifdef _MSC_VER -// "was declared deprecated" disabling -#pragma warning(disable : 4996 ) -#endif - -static const char kIllegalChar = '\0'; -static const char kNewLineChar = '\n'; - -static const char *kEOFMessage = "Unexpected end of input stream"; -static const char *kReadErrorMessage ="Error reading input stream"; -static const char *kIllegalCharMessage = "Illegal character in input stream"; - -static LPCTSTR kFileOpenMode = TEXT("r"); - -extern int g_CodePage; - -CStdInStream g_StdIn(stdin); - -bool CStdInStream::Open(LPCTSTR fileName) -{ - Close(); - _stream = _tfopen(fileName, kFileOpenMode); - _streamIsOpen = (_stream != 0); - return _streamIsOpen; -} - -bool CStdInStream::Close() -{ - if (!_streamIsOpen) - return true; - _streamIsOpen = (fclose(_stream) != 0); - return !_streamIsOpen; -} - -CStdInStream::~CStdInStream() -{ - Close(); -} - -AString CStdInStream::ScanStringUntilNewLine(bool allowEOF) -{ - AString s; - for (;;) - { - int intChar = GetChar(); - if (intChar == EOF) - { - if (allowEOF) - break; - throw kEOFMessage; - } - char c = char(intChar); - if (c == kIllegalChar) - throw kIllegalCharMessage; - if (c == kNewLineChar) - break; - s += c; - } - return s; -} - -UString CStdInStream::ScanUStringUntilNewLine() -{ - AString s = ScanStringUntilNewLine(true); - int codePage = g_CodePage; - if (codePage == -1) - codePage = CP_OEMCP; - UString dest; - if (codePage == CP_UTF8) - ConvertUTF8ToUnicode(s, dest); - else - dest = MultiByteToUnicodeString(s, (UINT)codePage); - return dest; -} - -void CStdInStream::ReadToString(AString &resultString) -{ - resultString.Empty(); - int c; - while ((c = GetChar()) != EOF) - resultString += char(c); -} - -bool CStdInStream::Eof() -{ - return (feof(_stream) != 0); -} - -int CStdInStream::GetChar() -{ - int c = fgetc(_stream); // getc() doesn't work in BeOS? - if (c == EOF && !Eof()) - throw kReadErrorMessage; - return c; -} - - |