Message ID | 20240410160614.90627-3-philmd@linaro.org |
---|---|
State | New |
Headers | show |
Series | misc: Remove sprintf() due to macOS deprecation | expand |
On Wed, 10 Apr 2024 18:06:03 +0200 Philippe Mathieu-Daudé <philmd@linaro.org> wrote: > sprintf() is deprecated on Darwin since macOS 13.0 / XCode 14.1, > resulting in painful developper experience. Use g_strdup_printf() > instead. Isn't this code only compiled for Linux hosts? Maybe still a valid change, but the rationale seems irrelevant. Thanks, Alex > > Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> > --- > hw/vfio/pci.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c > index 64780d1b79..cc3cc89122 100644 > --- a/hw/vfio/pci.c > +++ b/hw/vfio/pci.c > @@ -2442,10 +2442,9 @@ void vfio_pci_post_reset(VFIOPCIDevice *vdev) > > bool vfio_pci_host_match(PCIHostDeviceAddress *addr, const char *name) > { > - char tmp[13]; > - > - sprintf(tmp, "%04x:%02x:%02x.%1x", addr->domain, > - addr->bus, addr->slot, addr->function); > + g_autofree char *tmp = g_strdup_printf("%04x:%02x:%02x.%1x", > + addr->domain, addr->bus, > + addr->slot, addr->function); > > return (strcmp(tmp, name) == 0); > }
On 4/12/24 17:25, Alex Williamson wrote: > On Wed, 10 Apr 2024 18:06:03 +0200 > Philippe Mathieu-Daudé <philmd@linaro.org> wrote: > >> sprintf() is deprecated on Darwin since macOS 13.0 / XCode 14.1, >> resulting in painful developper experience. Use g_strdup_printf() >> instead. > > Isn't this code only compiled for Linux hosts? It is not. > Maybe still a valid change, but the rationale seems irrelevant. I agree the commit log should be rephrased. There is also a v2 doing a different change : https://lore.kernel.org/qemu-devel/20240411101550.99392-1-philmd@linaro.org/ This is a bit confusing. Thanks, C.
diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c index 64780d1b79..cc3cc89122 100644 --- a/hw/vfio/pci.c +++ b/hw/vfio/pci.c @@ -2442,10 +2442,9 @@ void vfio_pci_post_reset(VFIOPCIDevice *vdev) bool vfio_pci_host_match(PCIHostDeviceAddress *addr, const char *name) { - char tmp[13]; - - sprintf(tmp, "%04x:%02x:%02x.%1x", addr->domain, - addr->bus, addr->slot, addr->function); + g_autofree char *tmp = g_strdup_printf("%04x:%02x:%02x.%1x", + addr->domain, addr->bus, + addr->slot, addr->function); return (strcmp(tmp, name) == 0); }
sprintf() is deprecated on Darwin since macOS 13.0 / XCode 14.1, resulting in painful developper experience. Use g_strdup_printf() instead. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- hw/vfio/pci.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)