This indirectly fixes the testtrash unittest which noticed that the
directory size cache was being updated when CopyJob stat's the
destination trash:/.
Details
bin/testtrash
Diff Detail
- Repository
- R241 KIO
- Branch
- 2020_optimize_recursive_size
- Lint
No Linters Available - Unit
No Unit Test Coverage - Build Status
Buildable 25397 Build 25415: arc lint + arc unit
So we are gonna need a patch to baloo-widget stat, with KIO::StatRecursiveSize
A test would nice for trash:/ with KIO::StatRecursiveSize
src/ioslaves/trash/trashimpl.cpp | ||
---|---|---|
1105 | Maybe, check for details & KIO::StatTime |
src/core/global.h | ||
---|---|---|
323 ↗ | (On Diff #80335) | I don't think we should assume that, it defeats quite the purpose. |
src/ioslaves/trash/trashimpl.cpp | ||
1105 | (I don't expect it) |
src/core/global.h | ||
---|---|---|
323 ↗ | (On Diff #80335) | There are bugs in the current kio_file implementation if StatBasic isn't set. mode_t type = 0; if (details & KIO::StatBasic) { ... code that sets type ... } if (details & KIO::StatAcl) { appendACLAtoms(targetPath, entry, type); // oops type is 0 } Hmm I thought I saw more, but now I don't see more (must have been fixed meanwhile). If you fix the bug I'm happy to remove the comment, LOL. |
src/ioslaves/trash/trashimpl.cpp | ||
---|---|---|
1105 | Well, if StatRecursiveSize is set, we have the info, so we might as well provide it. If it's not set, then this would mean we need to do the whole recursive thing also when StatTime is set, and it's part of StatDefaultDetails so I expect we'll do this often for nothing. I think we don't really want to do that, in practice we need both pieces of information, or none. |