Rev 9505 | Rev 9536 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 9505 | Rev 9534 | ||
---|---|---|---|
Line 12... | Line 12... | ||
12 | FILE_EXISTS, |
12 | FILE_EXISTS, |
13 | FILE_REPLACE, |
13 | FILE_REPLACE, |
14 | FILE_SKIP, |
14 | FILE_SKIP, |
15 | }; |
15 | }; |
Line -... | Line 16... | ||
- | 16 | ||
- | 17 | enum { |
|
- | 18 | MODE_NORMAL, |
|
- | 19 | MODE_FORCE |
|
- | 20 | }; |
|
16 | 21 | ||
17 | #define WRITE_ERROR_DEBUG 0 |
22 | #define WRITE_ERROR_DEBUG 0 |
18 | #define WRITE_ERROR_NOTIFY 1 |
23 | #define WRITE_ERROR_NOTIFY 1 |
Line 19... | Line 24... | ||
19 | :int writing_error_channel = WRITE_ERROR_DEBUG; |
24 | :int writing_error_channel = WRITE_ERROR_DEBUG; |
- | 25 | ||
- | 26 | int copy_state = FILE_DEFAULT; |
|
Line 20... | Line 27... | ||
20 | 27 | int saved_state = FILE_DEFAULT; |
|
21 | int copy_state = FILE_DEFAULT; |
28 | bool is_remember = false; |
22 | 29 | ||
23 | :int copyf(dword from1, in1) |
30 | :int copyf(dword from1, in1) |
24 | { |
- | |
Line 25... | Line 31... | ||
25 | dword error; |
31 | { |
26 | BDVK CopyFile_atr1; |
32 | dword error; |
27 | copy_state = FILE_DEFAULT; |
33 | BDVK CopyFile_atr1; |
28 | 34 | ||
Line 51... | Line 57... | ||
51 | return error; |
57 | return error; |
52 | } |
58 | } |
53 | } |
59 | } |
54 | if (copy_state == FILE_SKIP) |
60 | if (copy_state == FILE_SKIP) |
55 | { |
61 | { |
- | 62 | error = 0; |
|
56 | return 0; |
63 | return 0; |
57 | } |
64 | } |
58 | } |
65 | } |
59 | } |
66 | } |
60 | } |
67 | } |
Line 70... | Line 77... | ||
70 | } |
77 | } |
71 | else |
78 | else |
72 | { |
79 | { |
73 | if (file_exists(copy_in3)) && (copy_state != FILE_REPLACE) |
80 | if (file_exists(copy_in3)) && (copy_state != FILE_REPLACE) |
74 | { |
81 | { |
- | 82 | if (saved_state == FILE_DEFAULT) { |
|
75 | copy_state = FILE_EXISTS; |
83 | copy_state = FILE_EXISTS; |
- | 84 | } else { |
|
- | 85 | copy_state = saved_state; |
|
- | 86 | } |
|
76 | return 222; |
87 | return 222; |
77 | } |
88 | } |
78 | if (GetFreeRAM()-1024*1024 < CopyFile_atr.sizelo) //GetFreeRam-1Mb and convert to bytes |
89 | if (GetFreeRAM()-1024*1024 < CopyFile_atr.sizelo) //GetFreeRam-1Mb and convert to bytes |
79 | { |
90 | { |
80 | if (error = CopyFileByBlocks(CopyFile_atr.sizelo, copy_from3, copy_in3)) |
91 | if (error = CopyFileByBlocks(CopyFile_atr.sizelo, copy_from3, copy_in3)) |
Line 140... | Line 151... | ||
140 | break; |
151 | break; |
141 | } |
152 | } |
142 | } |
153 | } |
143 | if (copy_state == FILE_SKIP) |
154 | if (copy_state == FILE_SKIP) |
144 | { |
155 | { |
145 | copy_state = FILE_DEFAULT; |
156 | error = 0; |
146 | break; |
157 | break; |
147 | } |
158 | } |
148 | } |
159 | } |
149 | } |
160 | } |
150 | } |
161 | } |