]> granicus.if.org Git - php/commitdiff
Fixed bug #66060 (Heap buffer over-read in DateInterval)
authorRemi Collet <remi@php.net>
Wed, 27 Nov 2013 10:13:16 +0000 (11:13 +0100)
committerStanislav Malyshev <stas@php.net>
Fri, 18 Jul 2014 22:39:37 +0000 (15:39 -0700)
Conflicts:
ext/date/lib/parse_iso_intervals.c

ext/date/lib/parse_iso_intervals.c
ext/date/lib/parse_iso_intervals.re

index 94dddaa1369e9ae56eb0f6b06186804228eccd5a..07c5b76384033e73321b56d005be082fc99fbfb3 100644 (file)
@@ -415,7 +415,7 @@ yy6:
                                        break;
                        }
                        ptr++;
-               } while (*ptr);
+               } while (!s->errors->error_count && *ptr);
                s->have_period = 1;
                TIMELIB_DEINIT;
                return TIMELIB_PERIOD;
index 56aa34d8e005e7ec36ec4471c3d7308cf2308a04..c5e9f677ba22431074f3948887ae8394b4949b94 100644 (file)
@@ -383,7 +383,7 @@ isoweek          = year4 "-"? "W" weekofyear;
                                        break;
                        }
                        ptr++;
-               } while (*ptr);
+               } while (!s->errors->error_count && *ptr);
                s->have_period = 1;
                TIMELIB_DEINIT;
                return TIMELIB_PERIOD;