diff --git a/src/add-ons/accelerants/neomagic/InitAccelerant.c b/src/add-ons/accelerants/neomagic/InitAccelerant.c index 2bd4ee6103..43e3e71762 100644 --- a/src/add-ons/accelerants/neomagic/InitAccelerant.c +++ b/src/add-ons/accelerants/neomagic/InitAccelerant.c @@ -308,13 +308,18 @@ error0: void UNINIT_ACCELERANT(void) { if (accelerantIsClone) + { LOG(4,("UNINIT_ACCELERANT: shutting down clone accelerant.\n")); + } else + { LOG(4,("UNINIT_ACCELERANT: shutting down primary accelerant.\n")); - /*delete benaphore*/ - DELETE_BEN(si->engine.lock); - DELETE_BEN(si->overlay.lock); + /* delete benaphores ONLY if we are the primary accelerant */ + DELETE_BEN(si->engine.lock); + DELETE_BEN(si->overlay.lock); + } + /* free our mode list area */ delete_area(my_mode_list_area); /* paranoia */ diff --git a/src/add-ons/accelerants/nvidia/InitAccelerant.c b/src/add-ons/accelerants/nvidia/InitAccelerant.c index 197680e7ab..7fcd0bfe62 100644 --- a/src/add-ons/accelerants/nvidia/InitAccelerant.c +++ b/src/add-ons/accelerants/nvidia/InitAccelerant.c @@ -291,13 +291,18 @@ error0: void UNINIT_ACCELERANT(void) { if (accelerantIsClone) + { LOG(4,("UNINIT_ACCELERANT: shutting down clone accelerant.\n")); + } else + { LOG(4,("UNINIT_ACCELERANT: shutting down primary accelerant.\n")); - /*delete benaphore*/ - DELETE_BEN(si->engine.lock); - DELETE_BEN(si->overlay.lock); + /* delete benaphores ONLY if we are the primary accelerant */ + DELETE_BEN(si->engine.lock); + DELETE_BEN(si->overlay.lock); + } + /* free our mode list area */ delete_area(my_mode_list_area); /* paranoia */