summaryrefslogtreecommitdiff
path: root/plugins/CopyEngine/Ultracopier-Spec/FileErrorDialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/CopyEngine/Ultracopier-Spec/FileErrorDialog.cpp')
-rwxr-xr-xplugins/CopyEngine/Ultracopier-Spec/FileErrorDialog.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/plugins/CopyEngine/Ultracopier-Spec/FileErrorDialog.cpp b/plugins/CopyEngine/Ultracopier-Spec/FileErrorDialog.cpp
index 587a889..d5f23c8 100755
--- a/plugins/CopyEngine/Ultracopier-Spec/FileErrorDialog.cpp
+++ b/plugins/CopyEngine/Ultracopier-Spec/FileErrorDialog.cpp
@@ -25,14 +25,19 @@ FileErrorDialog::FileErrorDialog(QWidget *parent, INTERNALTYPEPATH fileInfo, std
WIN32_FILE_ATTRIBUTE_DATA fileInfoW;
if(GetFileAttributesExW(fileInfo.c_str(),GetFileExInfoStandard,&fileInfoW))
{
- uint64_t mdate=fileInfoW.ftLastWriteTime.dwHighDateTime;
- mdate<<=32;
- mdate|=fileInfoW.ftLastWriteTime.dwLowDateTime;
+ LARGE_INTEGER li;
+ li.LowPart = fileInfoW.ftLastWriteTime.dwLowDateTime;
+ li.HighPart = fileInfoW.ftLastWriteTime.dwHighDateTime;
+ const uint64_t mdate=(li.QuadPart - 0x019DB1DED53E8000) / 10000000;
+ //uint64_t mdate=fileInfoW.ftLastWriteTime.dwHighDateTime;
+ /*mdate<<=32;
+ mdate|=fileInfoW.ftLastWriteTime.dwLowDateTime;*/
uint64_t size=fileInfoW.nFileSizeHigh;
size<<=32;
size|=fileInfoW.nFileSizeLow;
#else
struct stat p_statbuf;
+ memset(&p_statbuf,0,sizeof(p_statbuf));
if(stat(TransferThread::internalStringTostring(fileInfo).c_str(), &p_statbuf)==0)
{
#ifdef Q_OS_UNIX