Subversion Repositories Kolibri OS

Rev

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
	}