chiark / gitweb /
udev-rules.c: parse_file() - fix possible buffer overflow
[elogind.git] / udev / udev-rules.c
index 4d9fa70ae54fe4193884e2043fddf92398262abe..da08bc11f69668a807e675743757da033fc76dee 100644 (file)
@@ -1599,6 +1599,8 @@ static int parse_file(struct udev_rules *rules, const char *filename, unsigned s
                while (line[len-2] == '\\') {
                        if (fgets(&line[len-2], (sizeof(line)-len)+2, f) == NULL)
                                break;
+                       if (strlen(&line[len-2]) < 2)
+                               break;
                        line_nr++;
                        len = strlen(line);
                }