diff --git a/[refs] b/[refs] index 3d12311d0d6f..860f9ad15dda 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ab7bdb12984732e5ebac00d6a180431cbd4e0ce1 +refs/heads/master: 1e19c21ec7b5e66228602f4d88d894e23db1e004 diff --git a/trunk/drivers/media/common/siano/smscoreapi.c b/trunk/drivers/media/common/siano/smscoreapi.c index 5034153ed09c..7302f950c6bd 100644 --- a/trunk/drivers/media/common/siano/smscoreapi.c +++ b/trunk/drivers/media/common/siano/smscoreapi.c @@ -977,13 +977,16 @@ static int smscore_load_firmware_family2(struct smscore_device_t *coredev, msleep(400); exit_fw_download: - sms_debug("rc=%d, postload=0x%p ", rc, coredev->postload_handler); - kfree(msg); - return ((rc >= 0) && coredev->postload_handler) ? - coredev->postload_handler(coredev->context) : - rc; + if (coredev->postload_handler) { + sms_debug("rc=%d, postload=0x%p", rc, coredev->postload_handler); + if (rc >= 0) + return coredev->postload_handler(coredev->context); + } + + sms_debug("rc=%d", rc); + return rc; }