-
- Downloads
Fix a bug in recognizing bandwidth files.
We're using a regular expression on the first 100 characters of a descriptor to recognize bandwidth files. More specifically, if a descriptor starts with ten digits followed by a newline, we parse it as a bandwidth file. (This is ugly, but the legacy bandwidth file format doesn't give us much of a choice.) This regular expression is broken. The regular expression we want is one that matches the first 100 characters of a descriptor, which ours didn't do. More detailed explanation of the code change: - We don't need to start the pattern with `^`, because the regular expression needs to match the whole string anyway. - The `(?s)` part enables the dotall mode: "In dotall mode, the expression . matches any character, including a line terminator. By default this expression does not match line terminators. Dotall mode can also be enabled via the embedded flag expression (?s). (The s is a mnemonic for "single-line" mode, which is what this is called in Perl.)" - We need to end the pattern with `.*` to match any characters following the first newline, which also includes newlines due to the previously enabled dotall mode. Fixes #30369.
Loading
Please register or sign in to comment