mingw32: Fix bug that aria2 does not read piped stdin

pull/271/head
Tatsuhiro Tsujikawa 2014-07-30 00:38:45 +09:00
parent c659fe939d
commit bd0a3960df
2 changed files with 6 additions and 3 deletions

View File

@ -46,7 +46,9 @@ namespace aria2 {
BufferedFile::BufferedFile(const char* filename, const char* mode) BufferedFile::BufferedFile(const char* filename, const char* mode)
: :
#ifdef __MINGW32__ #ifdef __MINGW32__
fp_(a2fopen(utf8ToWChar(filename).c_str(), utf8ToWChar(mode).c_str())), fp_(strcmp(DEV_STDIN, filename) == 0 ?
stdin : a2fopen(utf8ToWChar(filename).c_str(),
utf8ToWChar(mode).c_str())),
#else // !__MINGW32__ #else // !__MINGW32__
fp_(a2fopen(filename, mode)), fp_(a2fopen(filename, mode)),
#endif // !__MINGW32__ #endif // !__MINGW32__

View File

@ -49,7 +49,8 @@ GZipFile::GZipFile(const char* filename, const char* mode)
{ {
FILE* fp = FILE* fp =
#ifdef __MINGW32__ #ifdef __MINGW32__
a2fopen(utf8ToWChar(filename).c_str(), utf8ToWChar(mode).c_str()); strcmp(DEV_STDIN, filename) == 0 ?
stdin : a2fopen(utf8ToWChar(filename).c_str(), utf8ToWChar(mode).c_str());
#else // !__MINGW32__ #else // !__MINGW32__
a2fopen(filename, mode); a2fopen(filename, mode);
#endif // !__MINGW32__ #endif // !__MINGW32__