~ubuntu-branches/debian/experimental/nzbget/experimental

« back to all changes in this revision

Viewing changes to libpar2-0.2-cancel.patch

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Moog
  • Date: 2011-05-06 19:01:38 UTC
  • Revision ID: james.westby@ubuntu.com-20110506190138-6l4nro6jmhr3837i
Tags: upstream-0.7.0
ImportĀ upstreamĀ versionĀ 0.7.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
diff -aud ../libpar2-0.2-original/par2repairer.cpp ../libpar2-0.2/par2repairer.cpp
 
2
--- ../libpar2-0.2-original/par2repairer.cpp    2008-10-26 19:54:33.000000000 +0100
 
3
+++ ../libpar2-0.2/par2repairer.cpp     2008-10-29 10:24:48.000000000 +0100
 
4
@@ -52,6 +52,8 @@
 
5
   noiselevel = CommandLine::nlNormal;
 
6
   headers = new ParHeaders;
 
7
   alreadyloaded = false;
 
8
+
 
9
+  cancelled = false;
 
10
 }
 
11
 
 
12
 Par2Repairer::~Par2Repairer(void)
 
13
@@ -406,6 +408,10 @@
 
14
           progress = offset;
 
15
        sig_progress.emit(newfraction);
 
16
 
 
17
+          if (cancelled)
 
18
+          {
 
19
+            break;
 
20
+          }
 
21
         }
 
22
       }
 
23
 
 
24
@@ -584,6 +590,11 @@
 
25
     delete diskfile;
 
26
   }
 
27
   
 
28
+  if (cancelled)
 
29
+  {
 
30
+    return false;
 
31
+  }
 
32
+
 
33
   return true;
 
34
 }
 
35
 
 
36
@@ -833,9 +844,17 @@
 
37
     for (list<string>::const_iterator s=files->begin(); s!=files->end(); ++s)
 
38
     {
 
39
       LoadPacketsFromFile(*s);
 
40
+      if (cancelled)
 
41
+      {
 
42
+        break;
 
43
+      }
 
44
     }
 
45
 
 
46
     delete files;
 
47
+    if (cancelled)
 
48
+    {
 
49
+      return false;
 
50
+    }
 
51
   }
 
52
 
 
53
   {
 
54
@@ -846,9 +865,17 @@
 
55
     for (list<string>::const_iterator s=files->begin(); s!=files->end(); ++s)
 
56
     {
 
57
       LoadPacketsFromFile(*s);
 
58
+      if (cancelled)
 
59
+      {
 
60
+        break;
 
61
+      }
 
62
     }
 
63
 
 
64
     delete files;
 
65
+    if (cancelled)
 
66
+    {
 
67
+      return false;
 
68
+    }
 
69
   }
 
70
 
 
71
   return true;
 
72
@@ -866,9 +893,18 @@
 
73
         string::npos != filename.find(".PAR2"))
 
74
     {
 
75
       LoadPacketsFromFile(filename);
 
76
+      if (cancelled)
 
77
+      {
 
78
+        break;
 
79
+      }
 
80
     }
 
81
   }
 
82
 
 
83
+  if (cancelled)
 
84
+  {
 
85
+    return false;
 
86
+  }
 
87
+
 
88
   return true;
 
89
 }
 
90
 
 
91
@@ -1210,6 +1246,11 @@
 
92
   sf = sortedfiles.begin();
 
93
   while (sf != sortedfiles.end())
 
94
   {
 
95
+    if (cancelled)
 
96
+    {
 
97
+      return false;
 
98
+    }
 
99
+
 
100
     // Do we have a source file
 
101
     Par2RepairerSourceFile *sourcefile = *sf;
 
102
 
 
103
@@ -1562,6 +1603,10 @@
 
104
         cout << "Scanning: \"" << shortname << "\": " << newfraction/10 << '.' << newfraction%10 << "%\r" << flush;
 
105
        sig_progress.emit(newfraction);
 
106
 
 
107
+        if (cancelled)
 
108
+        {
 
109
+          break;
 
110
+        }
 
111
       }
 
112
     }
 
113
 
 
114
@@ -1651,6 +1696,11 @@
 
115
     }
 
116
   }
 
117
 
 
118
+  if (cancelled)
 
119
+  {
 
120
+    return false;
 
121
+  }
 
122
+
 
123
   // Get the Full and 16k hash values of the file
 
124
   filechecksummer.GetFileHashes(hashfull, hash16k);
 
125
 
 
126
@@ -2291,10 +2341,19 @@
 
127
             cout << "Repairing: " << newfraction/10 << '.' << newfraction%10 << "%\r" << flush;
 
128
            sig_progress.emit(newfraction);
 
129
 
 
130
+            if (cancelled)
 
131
+            {
 
132
+              break;
 
133
+            }
 
134
           }
 
135
         }
 
136
       }
 
137
 
 
138
+      if (cancelled)
 
139
+      {
 
140
+        break;
 
141
+      }
 
142
+
 
143
       ++inputblock;
 
144
       ++inputindex;
 
145
     }
 
146
@@ -2348,9 +2407,18 @@
 
147
           cout << "Processing: " << newfraction/10 << '.' << newfraction%10 << "%\r" << flush;
 
148
        sig_progress.emit(newfraction);
 
149
 
 
150
+          if (cancelled)
 
151
+          {
 
152
+            break;
 
153
+          }
 
154
         }
 
155
       }
 
156
 
 
157
+      if (cancelled)
 
158
+      {
 
159
+        break;
 
160
+      }
 
161
+
 
162
       ++copyblock;
 
163
       ++inputblock;
 
164
     }
 
165
@@ -2362,6 +2430,11 @@
 
166
     lastopenfile->Close();
 
167
   }
 
168
 
 
169
+  if (cancelled)
 
170
+  {
 
171
+    return false;
 
172
+  }
 
173
+
 
174
   if (noiselevel > CommandLine::nlQuiet)
 
175
     cout << "Writing recovered data\r";
 
176
 
 
177
diff -aud ../libpar2-0.2-original/par2repairer.h ../libpar2-0.2/par2repairer.h
 
178
--- ../libpar2-0.2-original/par2repairer.h      2006-01-20 00:38:27.000000000 +0100
 
179
+++ ../libpar2-0.2/par2repairer.h       2008-10-26 19:01:08.000000000 +0100
 
180
@@ -183,6 +183,7 @@
 
181
   u64                       totaldata;               // Total amount of data to be processed.
 
182
   u64                       totalsize;               // Total data size
 
183
 
 
184
+  bool                      cancelled;               // repair cancelled
 
185
 };
 
186
 
 
187
 #endif // __PAR2REPAIRER_H__