summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2018-02-10 10:45:18 +0000
committerEric Anholt <eric@anholt.net>2018-02-20 20:23:57 -0800
commit7075c084fc5699d76970d2f045c8c7c668dc53d8 (patch)
treef39e8accbefaefea288ac1a7116c6c852e121bba
parent1b313eedb5e5da3c7ee3f62a83b66a6e097fe0d3 (diff)
loader: Fix compiler warnings about truncating the PCI ID path.
My build was producing: ../src/loader/loader.c:121:67: warning: ā€˜%1uā€™ directive output may be truncated writing between 1 and 3 bytes into a region of size 2 [-Wformat-truncation=] and we can avoid this careful calculation by just using asprintf (as we do elsewhere in the file). Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
-rw-r--r--src/loader/loader.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/loader/loader.c b/src/loader/loader.c
index 913b3dcac0..92b4c5204b 100644
--- a/src/loader/loader.c
+++ b/src/loader/loader.c
@@ -110,17 +110,16 @@ static char *loader_get_dri_config_device_id(void)
static char *drm_construct_id_path_tag(drmDevicePtr device)
{
-#define PCI_ID_PATH_TAG_LENGTH sizeof("pci-xxxx_xx_xx_x")
char *tag = NULL;
if (device->bustype == DRM_BUS_PCI) {
- tag = calloc(PCI_ID_PATH_TAG_LENGTH, sizeof(char));
- if (tag == NULL)
- return NULL;
-
- snprintf(tag, PCI_ID_PATH_TAG_LENGTH, "pci-%04x_%02x_%02x_%1u",
- device->businfo.pci->domain, device->businfo.pci->bus,
- device->businfo.pci->dev, device->businfo.pci->func);
+ if (asprintf(&tag, "pci-%04x_%02x_%02x_%1u",
+ device->businfo.pci->domain,
+ device->businfo.pci->bus,
+ device->businfo.pci->dev,
+ device->businfo.pci->func) < 0) {
+ return NULL;
+ }
}
return tag;
}