497b_uppsrc.diff

The diff file to apply for uppsrc directory (variant b) - Sender Ghost, 07/28/2013 06:48 PM

Download (1.14 KB)

View differences:

uppsrc/ide/Browser/Item.cpp 2013-07-28 01:46:55 +0400
74 74
	LLOG("ParseItemNatural " << m.natural << ", pname: " << m.pname
75 75
	                         << ", tname: " << m.tname << ", m.ctname: " << m.ctname);
76 76
	Vector<ItemTextPart> part;
77
	const int length = name.GetLength();
77 78
	bool param = false;
78 79
	int pari = -1;
79 80
	int par = 0;
80 81
	while(*s) {
81
		ItemTextPart& p = part.Add();
82
		ItemTextPart p;
82 83
		p.pos = (int)(s - ~m.natural);
83 84
		p.type = ITEM_TEXT;
84 85
		p.pari = pari;
......
90 91
		}
91 92
		else
92 93
		if(iscid(*s) || *s == ':') {
93
			if(strncmp(s, name, name.GetLength()) == 0 && !iscid(s[name.GetLength()])) {
94
			if(strncmp(s, name, length) == 0 && !iscid(s[length])) {
94 95
				p.type = ITEM_NAME;
95
				n = name.GetLength();
96
				n = length;
96 97
				param = true;
97 98
			}
98 99
			else {
......
161 162
			while(s[n] && !iscid(s[n]))
162 163
				n++;
163 164
		}
164
		p.len = n;
165
		s += n;
165
		if(n) {
166
			p.len = n;
167
			s += n;
168
			part.Add(p);
169
		}
170
		else
171
			++s;
166 172
	}
167 173
	return part;
168 174
}