From: Kay Sievers Date: Wed, 8 Jul 2009 00:02:40 +0000 (+0200) Subject: libudev: device - free values before updating them X-Git-Tag: 174~905 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=a71369b0db359cddeb207a317588b175630dcca8;hp=804ab68550c5779a0a27b1ad2636184520f2a1cb libudev: device - free values before updating them --- diff --git a/libudev/libudev-device.c b/libudev/libudev-device.c index cbbddaeff..9d1e546c8 100644 --- a/libudev/libudev-device.c +++ b/libudev/libudev-device.c @@ -1282,6 +1282,7 @@ const char *udev_device_get_devpath_old(struct udev_device *udev_device) int udev_device_set_devpath_old(struct udev_device *udev_device, const char *devpath_old) { + free(udev_device->devpath_old); udev_device->devpath_old = strdup(devpath_old); if (udev_device->devpath_old == NULL) return -ENOMEM; @@ -1296,6 +1297,7 @@ const char *udev_device_get_knodename(struct udev_device *udev_device) int udev_device_set_knodename(struct udev_device *udev_device, const char *knodename) { + free(udev_device->knodename); udev_device->knodename = strdup(knodename); if (udev_device->knodename == NULL) return -ENOMEM;