| Summary: | file copy progress dialog shows incorrect values when copying files > 2GB | ||
|---|---|---|---|
| Product: | [Unmaintained] kio | Reporter: | James <james> |
| Component: | uiserver | Assignee: | David Faure <faure> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | didi156, lowtzow, mariusst, michael.jahn, yllar.pajus |
| Priority: | NOR | ||
| Version First Reported In: | 3.3.2 | ||
| Target Milestone: | --- | ||
| Platform: | unspecified | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed In: | ||
| Sentry Crash Report: | |||
|
Description
James
2005-01-15 15:25:19 UTC
Does it happen only when Samba is one of the endpoints? Or does it happen when copying such files across different paths in the local system as well? I can confirm the bug (when copying from smb to local file). Did not check local/local. Forgot to add: this is KDE 3.5.2 I can confirm this aswell, when 2.0 GB is copied dialog shows strange values. After a while it starts over from zero % aswell (see screenshot). I am copying from smb to local drive. http://bni.dyndns.org/large_file_copy_dialog.png the result of the copy seems fine, only progress that is bugged. I tried a local / local copy and that one worked. So I had a look at the sources of the smb kioslave and I think I might have found the problem. In file kdebase-3.5.2/kioslave/smb/kio_smb_dir.cpp line 51: int processed_size = 0; I think that should be: ssize_t processed_size = 0; However I couldn't test it, make tells me (after executing kdebase-3.5.2/configure): make: *** No targets specified and no makefile found. Stop. I guess I missed some preparation steps but perhaps it helps you anyway. At least it *could* be the reason for that TB filesize value. SVN commit 608111 by mkoller:
BUG: 97073
Fix correct display of file size transfers > 2GB
M +1 -1 kio_smb_browse.cpp
M +1 -1 kio_smb_dir.cpp
M +2 -2 kio_smb_file.cpp
--- branches/KDE/3.5/kdebase/kioslave/smb/kio_smb_browse.cpp #608110:608111
@@ -47,7 +47,7 @@
{
int result = smbc_stat( url.toSmbcUrl(), st);
kdDebug(KIO_SMB) << "smbc_stat " << url << " " << errno << " " << result << endl;
- kdDebug(KIO_SMB) << "size " << (long)st->st_size << endl;
+ kdDebug(KIO_SMB) << "size " << (KIO::filesize_t)st->st_size << endl;
return result;
}
--- branches/KDE/3.5/kdebase/kioslave/smb/kio_smb_dir.cpp #608110:608111
@@ -48,7 +48,7 @@
int dstflags;
int srcfd = -1;
int dstfd = -1;
- int processed_size = 0;
+ KIO::filesize_t processed_size = 0;
unsigned char buf[MAX_XFER_BUF_SIZE];
kdDebug(KIO_SMB) << "SMBSlave::copy with src = " << ksrc << "and dest = " << kdst << endl;
--- branches/KDE/3.5/kdebase/kioslave/smb/kio_smb_file.cpp #608110:608111
@@ -44,7 +44,7 @@
// time_t curtime = 0;
time_t lasttime = 0;
time_t starttime = 0;
- ssize_t totalbytesread = 0;
+ KIO::filesize_t totalbytesread = 0;
QByteArray filedata;
SMBUrl url;
@@ -122,7 +122,7 @@
smbc_close(filefd);
data( QByteArray() );
- processedSize( st.st_size);
+ processedSize(static_cast<KIO::filesize_t>(st.st_size));
}
else
*** Bug 85653 has been marked as a duplicate of this bug. *** *** Bug 107189 has been marked as a duplicate of this bug. *** *** Bug 128241 has been marked as a duplicate of this bug. *** *** Bug 112850 has been marked as a duplicate of this bug. *** *** Bug 140199 has been marked as a duplicate of this bug. *** |