michael@0: diff --git a/gfx/cairo/libpixman/src/pixman-cpu.c b/gfx/cairo/libpixman/src/pixman-cpu.c michael@0: --- a/gfx/cairo/libpixman/src/pixman-cpu.c michael@0: +++ b/gfx/cairo/libpixman/src/pixman-cpu.c michael@0: @@ -257,19 +257,22 @@ pixman_arm_read_auxv() michael@0: arm_tests_initialized = TRUE; michael@0: return; michael@0: } michael@0: michael@0: fread(buf, sizeof(char), 1024, f); michael@0: fclose(f); michael@0: pos = strstr(buf, ver_token); michael@0: if (pos) { michael@0: - int ver = *(pos + strlen(ver_token)) - '0'; michael@0: - arm_has_v7 = ver >= 7; michael@0: - arm_has_v6 = ver >= 6; michael@0: + char vchar = *(pos + strlen(ver_token)); michael@0: + if (vchar >= '0' && vchar <= '9') { michael@0: + int ver = vchar - '0'; michael@0: + arm_has_v7 = ver >= 7; michael@0: + arm_has_v6 = ver >= 6; michael@0: + } michael@0: } michael@0: arm_has_neon = strstr(buf, "neon") != NULL; michael@0: arm_has_vfp = strstr(buf, "vfp") != NULL; michael@0: arm_has_iwmmxt = strstr(buf, "iwmmxt") != NULL; michael@0: arm_tests_initialized = TRUE; michael@0: } michael@0: michael@0: #else