To prevent a segfault, pci-id is set only if INTEL_DEVID_OVERRIDE exists. Signed-off-by: Dongwon Kim <dongwon....@intel.com> --- intel_stub.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/intel_stub.c b/intel_stub.c index ea88400..cf9ddff 100644 --- a/intel_stub.c +++ b/intel_stub.c @@ -28,6 +28,7 @@ #include <stdio.h> #include <stdint.h> #include <stdarg.h> +#include <errno.h> #include <fcntl.h> #include <unistd.h> #include <sys/stat.h> @@ -174,6 +175,7 @@ ioctl(int fd, unsigned long request, ...) va_list args; void *argp; struct stat buf; + char *pci_id; va_start(args, request); argp = va_arg(args, void *); @@ -199,7 +201,13 @@ ioctl(int fd, unsigned long request, ...) *getparam->value = 1; break; case I915_PARAM_CHIPSET_ID: - *getparam->value = strtod(getenv("INTEL_DEVID_OVERRIDE"), NULL); + pci_id = getenv("INTEL_DEVID_OVERRIDE"); + + if (pci_id) + *getparam->value = strtod(pci_id, NULL); + else + return -EINVAL; + break; case I915_PARAM_CMD_PARSER_VERSION: *getparam->value = 9; -- 2.16.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev