]> granicus.if.org Git - php/commitdiff
Added missing sanity check, which was causing segfault.
authorMoriyoshi Koizumi <moriyoshi@php.net>
Fri, 4 Apr 2003 09:06:23 +0000 (09:06 +0000)
committerMoriyoshi Koizumi <moriyoshi@php.net>
Fri, 4 Apr 2003 09:06:23 +0000 (09:06 +0000)
ext/mbstring/mbfilter.c

index 37a5a9c008e16c2f2717cbbd4a097d993a49fde7..a9e441f655d8773a8a358e728efd2b469e2b6aa1 100644 (file)
@@ -8139,6 +8139,13 @@ mbfl_strcut(
        result->no_language = string->no_language;
        result->no_encoding = string->no_encoding;
 
+       if (from > (int)string->len) {
+               result->len = 0;
+               result->val = mbfl_malloc(1);
+               result->val[0] = '\0';
+               return result; 
+       }
+
        if ((encoding->flag & (MBFL_ENCTYPE_SBCS | MBFL_ENCTYPE_WCS2BE | MBFL_ENCTYPE_WCS2LE | MBFL_ENCTYPE_WCS4BE | MBFL_ENCTYPE_WCS4LE)) ||
           encoding->mblen_table != NULL) {
                len = string->len;