Subversion Repositories Kolibri OS

Rev

Rev 6825 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6825 siemargl 1
 
8827 rgimad 2
int cmd_waitfor(char param[]) {
3
	int		i, n, sel, sel_pid;
4
	char		*buf1k;
5
	unsigned	PID;
6
	short		STATE;
7
6825 siemargl 8
 
8827 rgimad 9
	sel_pid = LAST_PID;
10
	if (sel) {
11
		sel_pid = atoi(param);
12
	}
6825 siemargl 13
	if (0 == sel_pid) return FALSE;
8827 rgimad 14
6825 siemargl 15
 
8827 rgimad 16
6825 siemargl 17
 
8827 rgimad 18
	if (NULL == buf1k)
19
		return FALSE;
20
6825 siemargl 21
 
8827 rgimad 22
		for (i = 1;;i++) {
23
			n = kol_process_info(i, buf1k);
24
			PID = *(buf1k+30);
25
			STATE = *(buf1k+50);
26
			if (PID == sel_pid)
27
				if(9 == STATE)
28
					goto exit_normal;
29
				else break;
30
			if (i == n)
31
				goto exit_normal;
6825 siemargl 32
		}
33
		kol_sleep(10); // 100ms
8827 rgimad 34
	}
6825 siemargl 35
36
 
8827 rgimad 37
	free(buf1k);
38
	return TRUE;
39
6825 siemargl 40
 
41