rendered paste body/* NEW */ found = 0; while(fgets(line, 255, fp) != NULL){ if(strstr(line, interface) != NULL){ found = 1; break; } memset(line, 0, 256); } fclose(fp); sscanf(line, "%*s %*d %d. %d. %d.", &realtime_data->link, &realtime_data->level, &realtime_data->noise);/* OLD */ bcount = 0; bank = 0; new = 0; bytes_read = 0; bzero(linebuf, LINE_END); for(i = 0; i < 3; i++) bzero(cvalues[i], 4); fseek(fp, DATA_OFFSET, SEEK_SET); bytes_read = fread(linebuf, 1, LINE_END, fp); fclose(fp); linebuf[(bytes_read + 1)] = 0; for(s = 0; s < DATA_END; s++){ info = linebuf[s]; if(info > 47 && info < 58) break; } for(i = s; i < DATA_END; i++){ info = linebuf[i]; if(info > 47 && info < 58){ cvalues[bank][bcount] = info; bcount++; if(new == 1){ cvalues[bank][bcount-1] = 0; bcount = 0; bank++; cvalues[bank][bcount] = info; bcount++; if(bank > 2) break; } new = 0; }else{ new = 1; } }