mirror of
https://github.com/taglib/taglib.git
synced 2025-05-25 12:10:26 -04:00
The -p option of tagwriter sample does not work. This is because the picture file is open in text mode instead of binary. Also, the isFile function does not work on Windows in 32 bit mode with large files. Using _stat64 instead of stat solves the problem.
This commit is contained in:
parent
f3fb4d83a4
commit
c4ed590032
@ -48,10 +48,11 @@ bool isArgument(const char *s)
|
||||
|
||||
bool isFile(const char *s)
|
||||
{
|
||||
struct stat st;
|
||||
#ifdef _WIN32
|
||||
return ::stat(s, &st) == 0 && (st.st_mode & (S_IFREG));
|
||||
struct _stat64 st;
|
||||
return ::_stat64(s, &st) == 0 && (st.st_mode & S_IFREG);
|
||||
#else
|
||||
struct stat st;
|
||||
return ::stat(s, &st) == 0 && (st.st_mode & (S_IFREG | S_IFLNK));
|
||||
#endif
|
||||
}
|
||||
@ -180,7 +181,7 @@ int main(int argc, char *argv[])
|
||||
return 1;
|
||||
}
|
||||
ifstream picture;
|
||||
picture.open(value.toCString());
|
||||
picture.open(value.toCString(), ios::in | ios::binary);
|
||||
stringstream buffer;
|
||||
buffer << picture.rdbuf();
|
||||
picture.close();
|
||||
|
Loading…
Reference in New Issue
Block a user