Pass SyncFileItems by pointer instead of by value
authorJocelyn Turcotte <jturcotte@woboq.com>
Wed, 15 Apr 2015 13:19:11 +0000 (15:19 +0200)
committerJocelyn Turcotte <jturcotte@woboq.com>
Sat, 18 Apr 2015 12:26:40 +0000 (14:26 +0200)
commit12d7484b85c92a0c897daf37fa992a330fb91d9f
treed35a38a24c39f4dca5a719bc34c5c55f617ddc86
parent5dffd11755e24338c8f62ae3a70ef05bed287f99
Pass SyncFileItems by pointer instead of by value

Use a QSharedPointer to keep the same ownership and
continue passing the SyncFileItems as a const& when
ownership isn't taken. This allows sharing the same
allocations between the jobs and the result vectors.

This saves about 20MB of memory (off 120MB) once all
jobs are created.
20 files changed:
src/gui/folder.cpp
src/gui/socketapi.cpp
src/libsync/owncloudpropagator.cpp
src/libsync/owncloudpropagator.h
src/libsync/propagatedownload.cpp
src/libsync/propagatedownload.h
src/libsync/propagateremotedelete.cpp
src/libsync/propagateremotedelete.h
src/libsync/propagateremotemkdir.cpp
src/libsync/propagateremotemkdir.h
src/libsync/propagateremotemove.cpp
src/libsync/propagateremotemove.h
src/libsync/propagateupload.cpp
src/libsync/propagateupload.h
src/libsync/propagator_legacy.cpp
src/libsync/propagatorjobs.cpp
src/libsync/propagatorjobs.h
src/libsync/syncengine.cpp
src/libsync/syncengine.h
src/libsync/syncfileitem.h