Всем трям.
У мну проблема. Есть функция, которая (по замыслу, по крайней мере :)) ) возвращает значение ключа из ini файла. Возвращает, ессно, как строку.
Но... Глюк в следующем: если в ключе только цифры, то все ок. Если же в ключе появляються буквы, то функция возвращает черт знает что.
Куда копать?
Сама функция вот:
5 gchar *read_conf_value(FILE *fp, gchar *section, gchar *key)
6 {
7 char str_s[50];
8 char str_k[100];
9 char *p = NULL;
10 static char rez[100];
11 size_t len_sect;
12 size_t len_key;
13
14 len_sect = strlen(section);
15 len_key = strlen(key);
16
17 rewind(fp);
18
19 while (!feof(fp))
20 {
21 if ((fgets(str_s,50,fp)) && (!strncmp(str_s,section,len_sect)))
22 {
23 while (!feof(fp))
24 {
25 if ((fgets(str_k,100,fp)) && (!strncmp(str_k,key,len_key)))
26 {
27 p = strtok(str_k,key);
28 strcpy(rez,p);
29 #ifdef DEBUG
30 add_log(p,"info_tag");
31 #endif
32 return rez;
33 }
34 }
35 }
36 }
37 return rez;
38 }
|