Some drives are unable to return their temperature when in standby mode.
If there is more than one drive installed then other drives may not be
able to get parsed. This patch will skip over the unparsable output for
the current drive and let others get parsed.
Signed-off-by: Brenden Matthews <brenden@diddyinc.com>
}
line_s = *saveptr;
+again:
/* read the device */
*dev = ++p;
if (!(p = strchr(p, line_s[0])))
*(p++) = '\0';
*unit = *(p++);
*val = strtol(cval, &endptr, 10);
- if (*endptr)
- goto out_fail;
+ if (*endptr) {
+ if (!(p = strchr(p, line_s[0])))
+ goto out_fail;
+
+ p++;
+ goto again;
+ }
/* preset p for next call */
p++;