Changeset 5835 for lm-sensors/trunk/prog/sensord
- Timestamp:
- 05/07/10 11:01:58 (2 years ago)
- Files:
-
- 1 modified
-
lm-sensors/trunk/prog/sensord/rrd.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lm-sensors/trunk/prog/sensord/rrd.c
r5793 r5835 138 138 } 139 139 140 /* Returns the number of features processed, or -1 on error */ 140 141 static int _applyToFeatures(FeatureFN fn, void *data, 141 142 const sensors_chip_name *chip, 142 const ChipDescriptor *desc) 143 const ChipDescriptor *desc, 144 int labelOffset) 143 145 { 144 146 int i; … … 148 150 char *label; 149 151 150 for (i = 0; i < MAX_RRD_SENSORS && features[i].format; ++i) {152 for (i = 0; labelOffset + i < MAX_RRD_SENSORS && features[i].format; ++i) { 151 153 feature = features + i; 152 154 rawLabel = feature->feature->name; … … 159 161 } 160 162 161 rrdCheckLabel(rawLabel, i);162 fn(data, rrdLabels[ i], label, feature);163 rrdCheckLabel(rawLabel, labelOffset + i); 164 fn(data, rrdLabels[labelOffset + i], label, feature); 163 165 free(label); 164 166 } 165 return 0;167 return i; 166 168 } 167 169 … … 185 187 static int applyToFeatures(FeatureFN fn, void *data) 186 188 { 187 int i, i_detected, ret ;189 int i, i_detected, ret, labelOffset = 0; 188 190 const sensors_chip_name *chip, *chip_arg; 189 191 ChipDescriptor *desc; … … 198 200 continue; 199 201 200 ret = _applyToFeatures(fn, data, chip, desc );201 if (ret )202 ret = _applyToFeatures(fn, data, chip, desc, labelOffset); 203 if (ret < 0) 202 204 return ret; 205 labelOffset += ret; 203 206 } 204 207 }
