Subversion Repositories Kolibri OS

Rev

Rev 4534 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4534 Rev 4540
Line 1... Line 1...
1
#include "..\TWB\links.h"
1
#include "..\TWB\links.h"
Line 2... Line 2...
2
 
2
 
3
 
3
 
Line 4... Line 4...
4
dword buf;
4
dword bufpointer;
Line 5... Line 5...
5
dword filesize;
5
dword bufsize;
Line 6... Line 6...
6
 
6
 
Line 7... Line -...
7
#define URL param
-
 
8
 
-
 
9
scroll_bar scroll_wv = { 18,200,398, 44,18,0,115,15,0,0xeeeeee,0xD2CED0,0x555555,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1};
7
#define URL param
Line 10... Line 8...
10
 
8
 
11
char header[2048];
9
scroll_bar scroll_wv = { 18,200,398, 44,18,0,115,15,0,0xeeeeee,0xD2CED0,0x555555,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1};
12
 
10
 
13
int	downloader_id;
11
char header[2048];
14
 
12
 
15
char download_path[]="/rd/1/.download";
13
char download_path[]="/rd/1/.download";
16
 
14
 
Line 149... Line 147...
149
	if (!strncmp(#URL,"http:",5)) 
147
	if (!strncmp(#URL,"http:",5)) 
150
		file_size stdcall (#download_path);
148
		file_size stdcall (#download_path);
151
	else
149
	else
152
		file_size stdcall (#URL);
150
		file_size stdcall (#URL);
Line 153... Line 151...
153
	
151
	
154
	filesize = EBX;
152
	bufsize = EBX;
Line 155... Line 153...
155
	if (!filesize) return;
153
	if (!bufsize) return;
156
	
154
	
157
	mem_Free(buf);
155
	mem_Free(bufpointer);
158
	buf = mem_Alloc(filesize);
156
	bufpointer = mem_Alloc(bufsize);
159
	if (!strncmp(#URL,"http:",5)) 
157
	if (!strncmp(#URL,"http:",5)) 
160
		ReadFile(0, filesize, buf, #download_path);
158
		ReadFile(0, bufsize, bufpointer, #download_path);
Line 161... Line 159...
161
	else
159
	else
162
		ReadFile(0, filesize, buf, #URL);
160
		ReadFile(0, bufsize, bufpointer, #URL);
163
		
161
		
164
	cur_encoding = encoding;
162
	cur_encoding = encoding;
165
	if (encoding==_WIN) wintodos(buf);
163
	if (encoding==_WIN) wintodos(bufpointer);
Line 166... Line 164...
166
	if (encoding==_UTF) utf8rutodos(buf);
164
	if (encoding==_UTF) utf8rutodos(bufpointer);
167
	if (encoding==_KOI) koitodos(buf);
165
	if (encoding==_KOI) koitodos(bufpointer);
Line 195... Line 193...
195
		pre_text=0;
193
		pre_text=0;
196
		if (!strcmp(#URL + strlen(#URL) - 4, ".txt")) pre_text = 1;
194
		if (!strcmp(#URL + strlen(#URL) - 4, ".txt")) pre_text = 1;
197
		if (!strcmp(#URL + strlen(#URL) - 4, ".mht")) ignor_text = 1;
195
		if (!strcmp(#URL + strlen(#URL) - 4, ".mht")) ignor_text = 1;
198
	}
196
	}
Line 199... Line 197...
199
	
197
	
200
	for ( ; bufstart+filesize > bufpos; bufpos++;)
198
	for ( ; bufstart+bufsize > bufpos; bufpos++;)
201
	{
199
	{
202
		bukva = ESBYTE[bufpos];
200
		bukva = ESBYTE[bufpos];
203
		if (ignor_text) && (bukva!='<') continue;
201
		if (ignor_text) && (bukva!='<') continue;
204
		if (condition_text_active) && (condition_text_val != condition_href) && (bukva!='<') continue;
202
		if (condition_text_active) && (condition_text_val != condition_href) && (bukva!='<') continue;
Line 253... Line 251...
253
				{
251
				{
254
				HH_:
252
				HH_:
255
					do
253
					do
256
					{
254
					{
257
						bufpos++;
255
						bufpos++;
258
						if (bufstart + filesize <= bufpos) break 2;
256
						if (bufstart + bufsize <= bufpos) break 2;
259
					}
257
					}
260
					while (ESBYTE[bufpos] <>'-');
258
					while (ESBYTE[bufpos] <>'-');
Line 261... Line 259...
261
					
259
					
262
					bufpos++;
260
					bufpos++;
263
					if (ESBYTE[bufpos] <>'-') goto HH_;
261
					if (ESBYTE[bufpos] <>'-') goto HH_;
264
				}
262
				}
265
			}
263
			}
266
			while (ESBYTE[bufpos] !='>') && (bufpos < bufstart + filesize) //ïîëó÷àåì òåã è åãî ïàðàìåòðû
264
			while (ESBYTE[bufpos] !='>') && (bufpos < bufstart + bufsize) //ïîëó÷àåì òåã è åãî ïàðàìåòðû
267
			{
265
			{
268
				bukva = ESBYTE[bufpos];
266
				bukva = ESBYTE[bufpos];
269
				if (bukva == '\9') || (bukva == '\x0a') || (bukva == '\x0d') bukva = ' ';
267
				if (bukva == '\9') || (bukva == '\x0a') || (bukva == '\x0d') bukva = ' ';
270
				if (!ignor_param) && (bukva <>' ')
268
				if (!ignor_param) && (bukva <>' ')