diff options
author | jkim <jkim@FreeBSD.org> | 2016-02-23 22:50:45 +0000 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2016-02-23 22:50:45 +0000 |
commit | 17b02dde28003dcb4aa2bb9a4d5bbd8448465da4 (patch) | |
tree | f271dabbd8aae2784c531b4451c05bde536fa29f | |
parent | c7d6350d16b34cf063d0cf657e4b6ca004f0a32b (diff) | |
download | FreeBSD-src-17b02dde28003dcb4aa2bb9a4d5bbd8448465da4.zip FreeBSD-src-17b02dde28003dcb4aa2bb9a4d5bbd8448465da4.tar.gz |
Remove brightness notify handler before reinstalling new one.
-rw-r--r-- | sys/dev/acpica/acpi_video.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/acpica/acpi_video.c b/sys/dev/acpica/acpi_video.c index dc8aa41..135f5bc 100644 --- a/sys/dev/acpica/acpi_video.c +++ b/sys/dev/acpica/acpi_video.c @@ -597,8 +597,12 @@ acpi_video_vo_bind(struct acpi_video_output *vo, ACPI_HANDLE handle) { ACPI_SERIAL_BEGIN(video_output); - if (vo->vo_levels != NULL) + if (vo->vo_levels != NULL) { + AcpiRemoveNotifyHandler(vo->handle, ACPI_DEVICE_NOTIFY, + acpi_video_vo_notify_handler); AcpiOsFree(vo->vo_levels); + vo->vo_levels = NULL; + } vo->handle = handle; vo->vo_numlevels = vo_get_brightness_levels(handle, &vo->vo_levels); if (vo->vo_numlevels >= 2) { |