summaryrefslogtreecommitdiff
path: root/lib/CopyJob.cc
diff options
context:
space:
mode:
Diffstat (limited to 'lib/CopyJob.cc')
-rw-r--r--lib/CopyJob.cc14
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/CopyJob.cc b/lib/CopyJob.cc
index 329dd63..2554654 100644
--- a/lib/CopyJob.cc
+++ b/lib/CopyJob.cc
@@ -4,10 +4,16 @@
#include "gettext.h"
#include "CopyJob.h"
-CopyJob::CopyJob(Handle * as, Handle * ad, ssize_t asiz, bool ads, bool add) : s(as), d(ad), ds(ads), dd(add), siz(asiz), cursiz(0), r(0), w(0), tw(0) {
+CopyJob::CopyJob(Handle * as, Handle * ad, ssize_t asiz, bool ads, bool add, int ashape) : s(as), d(ad), ds(ads), dd(add), siz(asiz), cursiz(0), r(0), w(0), tw(0), shape(ashape) {
+ struct timezone tz;
+
s->SetNonBlock();
d->SetNonBlock();
WaitFor(s, W4_READING);
+
+ if (shape > 0) {
+ gettimeofday(&start, &tz);
+ }
}
CopyJob::~CopyJob() {
@@ -22,6 +28,12 @@ CopyJob::~CopyJob() {
int CopyJob::Do() throw (GeneralException) {
int tr;
+ struct timeval now;
+ struct timezone tz;
+
+ if (shape > 0) {
+ gettimeofday(&now, &tz);
+ }
switch (current) {
case 0: