Fix potential memory access violation in ecpg if filename of include file is
authorMichael Meskes <[email protected]>
Mon, 11 Mar 2019 15:11:16 +0000 (16:11 +0100)
committerMichael Meskes <[email protected]>
Mon, 11 Mar 2019 15:18:17 +0000 (16:18 +0100)
shorter than 2 characters.

Patch by: "Wu, Fei" <[email protected]>

src/interfaces/ecpg/preproc/pgc.l

index aaaa5885d9074d3a3fcca1749beb6cc3aa19edd1..c388cb66ed5b6af1de7b87c4aae1679fa61b4e16 100644 (file)
@@ -1358,7 +1358,7 @@ parse_include(void)
        yyin = fopen(inc_file, "r");
        if (!yyin)
        {
-           if (strcmp(inc_file + strlen(inc_file) - 2, ".h") != 0)
+           if (strlen(inc_file) <= 2 || strcmp(inc_file + strlen(inc_file) - 2, ".h") != 0)
            {
                strcat(inc_file, ".h");
                yyin = fopen(inc_file, "r");